anchor.diff:  type foo4 = N1.T<Param1=1, >
   type foo5 = N1.T<Param1=1,ParamIgnored= >
   """,
  -            [("type foo = N1.T<", Some ("[16..22)", 0, 0, None));
  -             ("type foo2 = N1.T<", Some ("[37..50)", 0, 0, Some "Param1"));
  -             ("type foo2 = N1.T<Param1", Some ("[37..50)", 0, 1, Some "Param1"));
  -             ("type foo2 = N1.T<Param1=", Some ("[37..50)", 0, 1, Some "Param1"));
  -             ("type foo3 = N1.T<", Some ("[64..83)", 0, 0, Some "ParamIgnored"));
  -             ("type foo3 = N1.T<ParamIgnored=", Some ("[64..83)", 0, 1, Some "ParamIgnored"));
  -             ("type foo4 = N1.T<Param1", Some ("[97..112)", 0, 2, Some "Param1"));
  -             ("type foo4 = N1.T<Param1=", Some ("[97..112)", 0, 2, Some "Param1"));
  -             ("type foo4 = N1.T<Param1=1", Some ("[97..112)", 0, 2, Some "Param1"));
  -             ("type foo5 = N1.T<Param1", Some ("[126..154)", 0, 2, Some "Param1"));
  -             ("type foo5 = N1.T<Param1=", Some ("[126..154)", 0, 2, Some "Param1"));
  -             ("type foo5 = N1.T<Param1=1", Some ("[126..154)", 0, 2, Some "Param1"));
  -             ("type foo5 = N1.T<Param1=1,", Some ("[126..154)", 1, 2, Some "ParamIgnored"));
  -             ("type foo5 = N1.T<Param1=1,ParamIgnored",Some ("[126..154)", 1, 2, Some "ParamIgnored"));
  -             ("type foo5 = N1.T<Param1=1,ParamIgnored=",Some ("[126..154)", 1, 2, Some "ParamIgnored"))])
  +            [("type foo = N1.T<", Some ("[18..24)", 0, 0, None));
  +             ("type foo2 = N1.T<", Some ("[40..53)", 0, 0, Some "Param1"));
  +             ("type foo2 = N1.T<Param1", Some ("[40..53)", 0, 1, Some "Param1"));
  +             ("type foo2 = N1.T<Param1=", Some ("[40..53)", 0, 1, Some "Param1"));
  +             ("type foo3 = N1.T<", Some ("[68..87)", 0, 0, Some "ParamIgnored"));
  +             ("type foo3 = N1.T<ParamIgnored=", Some ("[68..87)", 0, 1, Some "ParamIgnored"));
  +             ("type foo4 = N1.T<Param1", Some ("[102..117)", 0, 2, Some "Param1"));
  +             ("type foo4 = N1.T<Param1=", Some ("[102..117)", 0, 2, Some "Param1"));
  +             ("type foo4 = N1.T<Param1=1", Some ("[102..117)", 0, 2, Some "Param1"));
  +             ("type foo5 = N1.T<Param1", Some ("[132..160)", 0, 2, Some "Param1"));
  +             ("type foo5 = N1.T<Param1=", Some ("[132..160)", 0, 2, Some "Param1"));
  +             ("type foo5 = N1.T<Param1=1", Some ("[132..160)", 0, 2, Some "Param1"));
  +             ("type foo5 = N1.T<Param1=1,", Some ("[132..160)", 1, 2, Some "ParamIgnored"));
  +             ("type foo5 = N1.T<Param1=1,ParamIgnored",Some ("[132..160)", 1, 2, Some "ParamIgnored"));
  +             ("type foo5 = N1.T<Param1=1,ParamIgnored=",Some ("[132..160)", 1, 2, Some "ParamIgnored"))])
   //Test case 5
             ( """let _ = System.DateTime(""",
               [("let _ = System.DateTime(",  Some ("[8..24)", 0, 0, None)) ])
             ]
   
  +    let sb = System.Text.StringBuilder()
       for (fileContents, testCases) in manyTestCases do
         printfn "Test case: fileContents = %s..." fileContents.[2..4]
  +      
         let actual = 
           [ for (marker, expected) in testCases do
               printfn "Test case: marker = %s" marker 
  
positive.code:             [(".", None); 
               ("System", None); 
               ("WriteLine", None);
               ("(", Some ("[5..62)", 0, 2, Some "format")); 
               ("format", Some ("[5..62)", 0, 2, Some "format"));
               (",", None);
               ("""",""", Some ("[5..62)", 1, 2, Some "arg0"));
               ("arg0", Some ("[5..62)", 1, 2, Some "arg0"));
               ("arg0=", Some ("[5..62)", 1, 2, Some "arg0")); 
               ("World", Some ("[5..62)", 1, 2, Some "arg0"));
               (")", None)]);
            ( """
  //2
  
negative.code: type foo4 = N1.T<Param1=1,
  type foo5 = N1.T<Param1=1,ParamIgnored=
  """,
              [("type foo = N1.T<", Some ("[18..26)", 0, 0, None));
               ("type foo2 = N1.T<", Some ("[38..52)", 0, 0, Some "Param1"));
               ("type foo2 = N1.T<Param1", Some ("[38..52)", 0, 1, Some "Param1"));
               ("type foo2 = N1.T<Param1=", Some ("[38..52)", 0, 1, Some "Param1"));
               ("type foo3 = N1.T<", Some ("[64..84)", 0, 0, Some "ParamIgnored"));
               ("type foo3 = N1.T<ParamIgnored=", Some ("[64..84)", 0, 1, Some "ParamIgnored"));
               ("type foo4 = N1.T<Param1", Some ("[96..112)", 0, 2, Some "Param1"));
               ("type foo4 = N1.T<Param1=", Some ("[96..112)", 0, 2, Some "Param1"));
               ("type foo4 = N1.T<Param1=1", Some ("[96..112)", 0, 2, Some "Param1"));
               ("type foo5 = N1.T<Param1", Some ("[124..153)", 0, 2, Some "Param1"));
               ("type foo5 = N1.T<Param1=", Some ("[124..153)", 0, 2, Some "Param1"));
               ("type foo5 = N1.T<Param1=1", Some ("[124..153)", 0, 2, Some "Param1"));
               ("type foo5 = N1.T<Param1=1,", Some ("[124..153)", 1, 2, Some "ParamIgnored"));
               ("type foo5 = N1.T<Param1=1,ParamIgnored",Some ("[124..153)", 1, 2, Some "ParamIgnored"));
               ("type foo5 = N1.T<Param1=1,ParamIgnored=",Some ("[124..153)", 1, 2, Some "ParamIgnored"))
              ]);
            ( """
  //4
  