anchor.diff:  open FParsec
   open FParsec.Primitives
   open TomlFs.AST
  -open TomlFs.TomlState
   
   (*| Helpers |*)
   
  
positive.code: let toml_table, private pTableImpl = createParserForwardedToRef ()
  let toml_aot, private pArrOfTablesImpl = createParserForwardedToRef ()
  
  let inline listToKey keys = String.concat "." keys
  let inline keyToList (key:string) = key.Split '.' |> Array.toList
  
  
  let makeTable (vals: #seq<string*Value>): (_,_)table =
  
negative.code:     tbl.AddMany vals 
      tbl
  
  let toml_tablekey = (pTableKey .>> tskipRestOfLine) 
  
  
  
  
  
  pTableImpl := 
      (pTableKey .>> tskipRestOfLine).>>. (many toml_item)
  
  pArrOfTablesImpl :=
      many ((pArrayOfTablesKey .>> tskipRestOfLine) .>>. many toml_item)
  
  (*
      Rewrite parser to split on 
  
          [table.names]
          [[and.arrayof.table.names]]
  
          #   pull the heading of the table/array into the
          #   the components on the inside for fully qualified names
  
          e.g
              title                   = TOML Example
              owner.name              = Tom Preston-Werner
              owner.organization      = GitHub
              owner.bio               = GitHub Cofounder & CEO\nLikes tater tots and beer.
              owner.dob               = 05/27/1979 03:32:00
              database.server         = 192.168.1.1
              database.ports          = [| 8001, 8001, 8002, |]
              database.connection_max = 5000
              database.enabled        = True
  
      Build up a hashset during the parse to prevent any duplicate keys
  *)
  
  
  
  let toml_parser (stream: CharStream<_>) =
  