anchor.diff:  @init {
       $json = new JSONObject();
   }
  -    :   USING RELEVANCE MODEL IDENT prop_list[false] model=relevance_model?
  +    :   USING RELEVANCE MODEL IDENT prop_list[KeyType.STRING_LITERAL_AND_IDENT] model=relevance_model?
           {
               try {
                   if (model == null) {
  
positive.code:         )* RPAR
      ;
  
  key_value_pair[boolean needKeyInString] returns [String key, Object val]
  scope {
      boolean needString;
  }
  @init {
      $key_value_pair::needString = needKeyInString;
  }
      :   ( {$key_value_pair::needString}?=> STRING_LITERAL
          | {!$key_value_pair::needString}?=> IDENT
          )
          COLON (v=value | vs=python_style_list | vd=python_style_dict)
          {
  
negative.code:                 throw new FailedPredicateException(input, "prop_list", "JSONException: " + err.getMessage());
              }
          }
          (COMMA p=key_value_pair[keyType]
              {
                  try {
                      $json.put($p.key, $p.val);
  