anchor.diff:          let! status = Classifier.discard OPTIONAL_WHITESPACE originalStatus
   
           if List.isEmpty elements then
  -            //let! (value, status) = AcceptJsonObject status
               let! (tryFirstValue, status) = ClassifierBuilder.ZeroOrOne(status, AcceptJsonObject)
               match tryFirstValue with
               | None -> 
  
positive.code:         true, " [ 23498, 09, 45, 123.0e+10, -12e-499, 9.09834E-23 ] "
          false, " [ {}, 09 ] "
          true, """ [ {}, { "key2": { "subObject": [] } }, { "items": [ 7, 8, 9 ] } ] """
      ]
  
  let Example() =
  
negative.code:         return (keyNameText, value), status
      }
  
  and AcceptRecordKeyPairs elements status continuation =
      Classifiers.sub continuation {
          let! status = Classifier.discard OPTIONAL_WHITESPACE status
  
          if List.isEmpty elements then
              let! (tryFirstValue, status) = ClassifierBuilder.ZeroOrOne(status, AcceptJsonKeyPair)
              match tryFirstValue with
              | None -> 
                  return [], status
              | Some firstValue ->
                  return! AcceptRecordKeyPairs [ firstValue ] status
          else
              let! status = Classifier.discard OPTIONAL_WHITESPACE status
              let result = Classifier.discard Comma status
              match result with 
              | ClassifierResult.Ok(status) -> 
                  let! status = Classifier.discard OPTIONAL_WHITESPACE status
  
                  let! (value, status) = AcceptJsonKeyPair status
                  return! AcceptRecordKeyPairs (value :: elements) status
  
              | ClassifierResult.Error _ -> 
                  return elements, status
      }
  
  and AcceptJsonRecord status continuation =
  