anchor.diff:          res.ToArray()
   
       let familyToTokens = 
  -        let dict = new System.Collections.Generic.Dictionary<OtherFamily, int list>()
  +        let dict = new Dictionary<OtherFamily, int list>()
           // to avoid problems with cycles
           let visitingAST = new ResizeArray<OtherAST>()
   
  
positive.code:             then family.nodes.doForAllAfterNode node f
              else family.nodes.doForAllBeforeNode node f
  
          for family in cur do
              let mutable current = box family
              let count = ref 1
  
              let rec processFamily (family : OtherFamily) = 
                  if familyToTokens.ContainsKey family && 
                      not <| List.exists (fun t -> tokenToNumber tokens.[t] = pairNumber) familyToTokens.[family]
                  then ()
                  else
                      let handle (node : obj) =
  
negative.code:             createNode res false true AstNode ("t " + indToString (tokenToNumber tokens.[t]))
              res
          (*if not isEpsilon then*)
          for i = order.Length-1 downto 0 do
              let x = order.[i]
              if x.pos <> -1 then
  