anchor.diff:          |> Seq.iter (fun (prods, gv) -> 
               printfn "conf# %i  prods: %A" (Seq.length gv) prods
               gv |> (fun s -> if Seq.length s > 5 then Seq.take 5 s else s) |> Seq.map fst |> Seq.iter (printfn "    %A"))
  -        defaultAstToDot ast @"..\..\ast.dot"
  -        //ast.ChooseLongestMatch()
  -        //let translated = translate translateArgs ast : list<Script>            
  -        //printfn "%A" translated
  -        //translated.Head  
  +        defaultAstToDot ast (getResultFileName srcFilePath "ast_")
  +       
  +let CreateEmptyResultDirectory = 
  +    if (System.IO.Directory.Exists(!resultDirectoryPath))
  +    then System.IO.Directory.Delete(!resultDirectoryPath, true)
  +    System.IO.Directory.CreateDirectory(!resultDirectoryPath)
           
   let ParseAllDirectory (directoryName:string) =
  -    System.IO.Directory.GetFiles directoryName
  +    resultDirectoryPath := directoryName + @"\results\"
  +    CreateEmptyResultDirectory |> ignore
  +    System.IO.Directory.GetFiles(directoryName,"*.dot")
       |> Array.iter Parse
   
   do 
  -    let inPath = ref @"..\..\..\..\..\Tests\Materials\ms-sql\sysprocs\test.sql" 
  -    //let inPath = ref @"..\..\..\..\..\Tests\Materials\ms-sql\sysprocs\sp_addserver.sql"
  +    let inPath = ref @"..\..\tests\s2.dot"
       let parseDir = ref false
       let commandLineSpecs =
  -        ["-f", ArgType.String (fun s -> inPath := s), "Input file."
  +        ["-f", ArgType.String (fun s -> inPath := path s), "Input file."
            "-d", ArgType.String (fun s -> parseDir := true; inPath := s), "Input dir. Use for parse all files in specified directory."
            ] |> List.map (fun (shortcut, argtype, description) -> ArgInfo(shortcut, argtype, description))
       ArgParser.Parse commandLineSpecs
  
positive.code:     !inPath
      |> if !parseDir
         then ParseAllDirectory
         else Parse
      
  //@"D:\projects\YC\recursive-ascent\Tests\Materials\ms-sql\sysprocs\sp_addserver.sql" 
  //@"..\..\..\..\..\Tests\Materials\ms-sql\sqlsrvanalysissrvcs\MonitoringSSAS\config_data_server\get_query_text.sql"
  //@"C:\Users\Anastasiya\Desktop\Projects\Reengineering\recursive-ascent\Tests\materials\ms-sql\sysprocs\sp_addserver.sql"
negative.code: let path name = System.IO.Path.Combine(baseInputGraphsPath,name)
  
  let loadDotToQG gFile =
      let g = loadGraphFromDOT gFile
      let qGraph = ParserInputGraph()
      let getTkn str =
          try
              Yard.Examples.MSParser.genLiteral str 0UL 0UL
  