anchor.diff:  let parseExtractFunctionArguments (args : string list) =
       match List.length args with
           | 0 | 1 | 2 -> raise (ArgumentException "Too few arguments")
  -        | 3 -> ((parsePos args.[0], parsePos args.[1]), args.[2], None)
  -        | 4 -> ((parsePos args.[0], parsePos args.[1]), args.[2], Some args.[3])
  +        | 3 -> ((parsePosition args.[0], parsePosition args.[1]), args.[2], None)
  +        | 4 -> ((parsePosition args.[0], parsePosition args.[1]), args.[2], Some args.[3])
           | _ -> raise (ArgumentException "Too many arguments")
   
   let parseAddArgumentArguments (args : string list) =
  
positive.code:     printfn "  -oFILENAME, --output-file=FILENAME  Write result to FILENAME"
  
  
  
  let parsePos (positionString : string) =
      let m = Regex.Match(positionString, "([0-9]+):([0-9]+)")
      if m.Success then
          let line = Int32.Parse m.Groups.[1].Value
          let column = Int32.Parse m.Groups.[2].Value
          mkPos line (column-1)
      else raise (ArgumentException (sprintf "%s is not a valid position" positionString))
  
  let parsePosition (positionString : string) =
      let m = Regex.Match(positionString, "([0-9]+):([0-9]+)")
      if m.Success then
  
negative.code: open FSharpRefactor.Engine.CodeAnalysis.ScopeAnalysis
  open FSharpRefactor.Engine.Refactoring
  open FSharpRefactor.Refactorings
  open FSharpRefactor.Refactorings
  
  exception ArgumentException of string
  
  