anchor.diff:      
       let boolGen = Gen.elements ["true"; "false"]
       let nullGen = Gen.constant "null"
  +    let numGen  = Arb.generate<decimal>
  +                  |> Gen.map (fun d -> d.ToString(System.Globalization.CultureInfo.InvariantCulture))
   
       let recordGen record =
           record
  
positive.code:                     |> Gen.listOf
                      |> Gen.map (fun l -> sprintf "[%s]" (String.Join(",",l)))
                      |> Gen.resize (s|>float|>sqrt|>int) 
                  Gen.oneof [ subtree;  arrayGen; validJsonStringGen'; boolGen; nullGen; numberStringGen]
              | _ -> invalidArg "s" "Only positive arguments are allowed"
          Gen.sized tree'
  
      (validJsonStringGen', tree())
      |> recordGen
  
  
  type Generators = 
      static member JsonValue() =
           {new Arbitrary<JsonValue>() with
              override x.Generator = jsonValueGen
              override x.Shrinker j = 
                  match j with
                  | JsonValue.Array elems -> elems :> seq<JsonValue>
                  | JsonValue.Record [|prop|] -> Seq.singleton (prop |> snd)
                  | JsonValue.Record props -> seq {for n in props -> JsonValue.Record([|n|])}
                  | _ -> Seq.empty }
       
  
  [<TestFixtureSetUp>]
  let fixtureSetup() =
      Arb.register<Generators>() |> ignore
  
  #if INTERACTIVE
  fixtureSetup()
  #endif
  
  [<Test>]
  let  ``Parsing stringified JsonValue returns the same JsonValue`` () =
      let parseStringified (json: JsonValue) = 
          json.ToString(JsonSaveOptions.DisableFormatting)
          |> JsonValue.Parse = json
      Check.QuickThrowOnFailure parseStringified
  
  [<Test>]
  let ``Stringifing parsed string returns the same string`` () =
  
negative.code:         let jsonValue = JsonValue.Parse s
          jsonValue.ToString(JsonSaveOptions.DisableFormatting) = s
      let jsonStringArb = Arb.fromGen (jsonStringGen)
      
      Check.One ({Config.QuickThrowOnFailure with MaxTest = 10000},
                (Prop.forAll jsonStringArb stringifyParsed))