public boolean equals(
     ObjectLocator thisLocator,
     ObjectLocator thatLocator,
     Object object,
     EqualsStrategy strategy) {
   if (!(object instanceof DefinitionType)) {
     return false;
   }
   if (this == object) {
     return true;
   }
   if (!super.equals(thisLocator, thatLocator, object, strategy)) {
     return false;
   }
   final DefinitionType that = ((DefinitionType) object);
   {
     String lhsRemarks;
     lhsRemarks = this.getRemarks();
     String rhsRemarks;
     rhsRemarks = that.getRemarks();
     if (!strategy.equals(
         LocatorUtils.property(thisLocator, "remarks", lhsRemarks),
         LocatorUtils.property(thatLocator, "remarks", rhsRemarks),
         lhsRemarks,
         rhsRemarks)) {
       return false;
     }
   }
   return true;
 }
 public Object copyTo(ObjectLocator locator, Object target, CopyStrategy strategy) {
   final Object draftCopy = ((target == null) ? createNewInstance() : target);
   super.copyTo(locator, draftCopy, strategy);
   if (draftCopy instanceof DefinitionType) {
     final DefinitionType copy = ((DefinitionType) draftCopy);
     if (this.isSetRemarks()) {
       String sourceRemarks;
       sourceRemarks = this.getRemarks();
       String copyRemarks =
           ((String)
               strategy.copy(
                   LocatorUtils.property(locator, "remarks", sourceRemarks), sourceRemarks));
       copy.setRemarks(copyRemarks);
     } else {
       copy.remarks = null;
     }
   }
   return draftCopy;
 }
 public void mergeFrom(
     ObjectLocator leftLocator,
     ObjectLocator rightLocator,
     Object left,
     Object right,
     MergeStrategy strategy) {
   super.mergeFrom(leftLocator, rightLocator, left, right, strategy);
   if (right instanceof DefinitionType) {
     final DefinitionType target = this;
     final DefinitionType leftObject = ((DefinitionType) left);
     final DefinitionType rightObject = ((DefinitionType) right);
     {
       String lhsRemarks;
       lhsRemarks = leftObject.getRemarks();
       String rhsRemarks;
       rhsRemarks = rightObject.getRemarks();
       target.setRemarks(
           ((String)
               strategy.merge(
                   LocatorUtils.property(leftLocator, "remarks", lhsRemarks),
                   LocatorUtils.property(rightLocator, "remarks", rhsRemarks),
                   lhsRemarks,
                   rhsRemarks)));
     }
   }
 }