anchor.diff:                  <% if type.required_input_fields.length > 0 %>
                   try {
                       <% type.required_input_fields.each do |field| %>
  -                        Set("<%= field.name %>", dataJSON["<%= escape_reserved_word(field.name) %>"]);
  +                        Set(<%= field.name %>FieldKey, dataJSON[<%= field.name %>FieldKey]);
                       <% end %>
                   } catch {
                       throw;
  
positive.code:     <% when 'INPUT_OBJECT' %>
          <%= docs_input_object(type) %>
          public class <%= type.classify_name %> : InputBase {
              <% type.input_fields.each do |field| %>
                  <%= docs_input_field(field) %>
                  public <%= graph_type_to_csharp_type(field.type) %> <%= field.name %> {
                      get {
                          return <%= graph_type_to_csharp_cast(field.type, "Get(\"#{field.name}\")") %>;
                      }
                      set {
                          Set("<%= field.name %>", value);
                      }
                  }
              <% end %>
  
negative.code: 
                  <%# handle adding optional fields %>
                  <% type.optional_input_fields.each do |field| %>
                      if (dataJSON.ContainsKey(<%= field.name %>FieldKey)) {
                          Set(<%= field.name %>FieldKey, dataJSON[<%= field.name %>FieldKey]);
                      }
                  <% end %>
              }
  