anchor.diff:    {
       int result = 0;
   <% message.parameters.each do |parameter| -%>
  -    result = 31 * result + (<%= parameter.ee.primitive?(:boundary) ? (parameter.boolean? ? "#{Domgen::Naming.camelize(parameter.name)} ? 1 : 0": parameter.real? ? "Float.floatToIntBits(#{Domgen::Naming.camelize(parameter.name)})" : parameter.long? ? "(int)(#{Domgen::Naming.camelize(parameter.name)})" : Domgen::Naming.camelize(parameter.name)) : "#{parameter.nullable? ? "null == #{Domgen::Naming.camelize(parameter.name)} ? 0 : " : ''}#{Domgen::Naming.camelize(parameter.name)}.hashCode()" %>);
  +    result = 31 * result + (<%= parameter.ee.primitive?(:default) ? (parameter.boolean? ? "#{Domgen::Naming.camelize(parameter.name)} ? 1 : 0": parameter.real? ? "Float.floatToIntBits(#{Domgen::Naming.camelize(parameter.name)})" : parameter.long? ? "(int)(#{Domgen::Naming.camelize(parameter.name)})" : Domgen::Naming.camelize(parameter.name)) : "#{parameter.nullable? ? "null == #{Domgen::Naming.camelize(parameter.name)} ? 0 : " : ''}#{Domgen::Naming.camelize(parameter.name)}.hashCode()" %>);
   <% end -%>
       return result;
     }
  
positive.code:   }
  <% end %>
  
    public <%= message.name %>( <%= message.parameters.collect {|parameter| "#{annotated_type(parameter, :ee, :boundary, :final => true)} #{Domgen::Naming.camelize(parameter.name)}" }.join(", ") %> )
    {
  <% message.parameters.each do |parameter|
       null_protection = parameter.nullable? ? "#{Domgen::Naming.camelize(parameter.name)} == null ? null : " : ""
  
negative.code:   private static final long serialVersionUID = 1;
  
  <% message.parameters.each do |parameter| -%>
    <%= annotated_type(parameter, :ee, :default, :private => true) %> <%= Domgen::Naming.camelize(parameter.name) %>;
  <% end -%>
  
  <% if message.parameters.size != 0 %>
  