anchor.diff:                             startColumn indentSize typeParams objectIdentifier defaultBody
                              displayContext implementedMemberSignatures entity verboseMode
               stub.TrimEnd(Environment.NewLine.ToCharArray())
  -        match state.EndPosOfWith with
  -        | Some pos -> 
  -            let currentPos = sourceText.Lines.[pos.Line-1].Start + pos.Column
  -            TextChange(TextSpan(currentPos, 0), stub)
  +        let stubChange =
  +            match state.EndPosOfWith with
  +            | Some pos -> 
  +                let currentPos = sourceText.Lines.[pos.Line-1].Start + pos.Column
  +                TextChange(TextSpan(currentPos, 0), stub)                
  +            | None ->
  +                let range = state.InterfaceData.Range
  +                let currentPos = sourceText.Lines.[range.EndLine-1].Start + range.EndColumn
  +                TextChange(TextSpan(currentPos, 0), " with" + stub)                
  +        match state.AppendBracketAt with
  +        | Some index ->
  +            sourceText.WithChanges(stubChange, TextChange(TextSpan(index, 0), " }"))
           | None ->
  -            let range = state.InterfaceData.Range
  -            let currentPos = sourceText.Lines.[range.EndLine-1].Start + range.EndColumn
  -            TextChange(TextSpan(currentPos, 0), " with" + stub)
  -            
  +            sourceText.WithChanges(stubChange)
  +
       let registerSuggestions (context: CodeFixContext, results: FSharpCheckFileResults, state: InterfaceState, displayContext, entity, indentSize) =
           if InterfaceStubGenerator.hasNoInterfaceMember entity then 
               ()
  
positive.code:                             if t.CharClass = FSharpTokenCharKind.Keyword && t.LeftColumn >= column && t.TokenName = "WITH" then
                                  Some (Pos.fromZ line (t.RightColumn + 1))
                              else None)
                  return Some { InterfaceData = iface; EndPosOfWith = endPosOfWidth; Tokens = tokens } 
          }
          
      let getLineIdent (lineStr: string) =
  
negative.code:                 // There is no reference point, we indent the content at the start column of the interface
                  |> Option.defaultValue iface.Range.StartColumn
  
      let applyImplementInterface (sourceText: SourceText) state displayContext implementedMemberSignatures entity indentSize verboseMode = 
          let startColumn = inferStartColumn indentSize state sourceText
          let objectIdentifier = "this"
          let defaultBody = "raise (System.NotImplementedException())"
  