@Override
 public boolean equals(Object obj) {
   if (obj == this) {
     return true;
   }
   if (obj != null && obj.getClass() == this.getClass()) {
     ONCompoundedLegRollDateConvention other = (ONCompoundedLegRollDateConvention) obj;
     return JodaBeanUtils.equal(getOvernightIndexConvention(), other.getOvernightIndexConvention())
         && JodaBeanUtils.equal(getPaymentTenor(), other.getPaymentTenor())
         && JodaBeanUtils.equal(getStubType(), other.getStubType())
         && (isIsExchangeNotional() == other.isIsExchangeNotional())
         && (getPaymentLag() == other.getPaymentLag())
         && super.equals(obj);
   }
   return false;
 }