anchor.diff:                  else
                       (str_acc+word, true, 0)
               else
  -                let spaces_count = if newline then ident else 1
  +                let spaces_count = if newline then ident else 2
                   if (String.length word<=windowSize-chars_in_line-spaces_count) then
                       let appended = (String.replicate spaces_count " ")+word
                       (str_acc+appended,false, chars_in_line+(String.length appended))
  
positive.code:         List.collect (fun t ->
              match t with
              | Str(s) -> [(s, ident)]
              | Tabbed(tbList) -> [("\n", ident)]@(printIdentedList tbList (ident+tabSize))@[("\n", ident)]
              | Line(tbList)   -> [("\n", ident)]@(printIdentedList tbList (ident        ))@[("\n", ident)]
          ) tbList
  
      let strList = printIdentedList tbList 0
  
negative.code:                 | None -> ""
              [Str((if elem.omit then "-" else "") + (binding elem.binding))]@(bracketsIf ((match elem.binding with Some(_) -> true | None -> priority elem.rule=1) && priority elem.rule<50) (printProduction elem.rule))
          match production with
          | PAlt(alt1, alt2) -> [Tabbed(printProduction alt1); Line([Str("| ")]@(printProduction alt2))] //Альтернатива
          | PSeq(elem_list,attr_option) -> (List.collect printElem elem_list)@[Str(printAttr(attr_option))] //Последовательность * атрибут.(атрибут всегда применяется к последовательности) 
          | PToken(source) -> [Str(Source.toString source)] //собственно токен
          | PRef(source, attr_option) -> [Str((Source.toString source) + printArg(attr_option))] //Vanilla rule reference with an optional args list.
  