anchor.diff:          Printf.kprintf (fun s -> res.Append(s).Append('\n') |> ignore) x
   
       if isTok
  -    then printBr "new %sTermNode(\"%s\")" <| firstLetterToUpper leaf <| leaf
  -    else printBr "new %sLitNode(\"%s\")"  <| firstLetterToUpper leaf <| leaf
  +    then printBr "new %sTermNode(\"%s\")" <| toClassName leaf <| leaf
  +    else printBr "new %sLitNode(\"%s\")"  <| litToClassName leaf <| leaf
       
       res.ToString()
                                  
  
positive.code: open Yard.Core.IL
  open Yard.Core.IL.Production
  open Yard.Generators.RNGLR
  open PrintTreeNode
  
  let getLeafSemantic leaf isTok = 
      let res = new System.Text.StringBuilder()
  
negative.code:         lit
          |> indexator.literalToIndex
          |> indexator.getLiteralName
          
  
      let termsAndLitsList = ref []
  
      let createNewBinding (numOpt : int ref option) = 
          let newBinding = 
              if numOpt.IsSome 
              then 
                  incr numOpt.Value
                  Some <| new Source.t ("H" + numOpt.Value.Value.ToString())
              else None
          newBinding
  
      let getNewElem newBinding refRule : elem<Source.t, Source.t> = 
          
          let newElem : elem<Source.t, Source.t> = 
              {
                  binding = newBinding
  