anchor.diff:  begin
     DebugManager.Enter;
     try
  -    Connection.Server.Breakpoints[Current].ID := BreakpointID;
  -    Inc(Current);
       Result := Current < Connection.Server.Breakpoints.Count;
  -    {if Result then
  -      CopyInfo;}
     finally
       DebugManager.Leave;
     end;
  
positive.code:     aBreakpoint.Line := Line;
      Result := Add(aBreakpoint);
    end
    else
      Raise Exception.Create('Break point already exists');
  end;
  
negative.code: 
  procedure TdbgpSetBreakpoints.DoExecute(Respond: TDebugCommandRespond);
  begin
    if Delete then
    begin
      DebugManager.Enter;
      try
        Connection.Server.Breakpoints[Current].ID := 0;
        Connection.Server.Breakpoints.Delete(Current);
      finally
        DebugManager.Leave;
      end;
    end
    else
    begin
      CheckError(Respond);
      DebugManager.Enter;
      try
        Connection.Server.Breakpoints[Current].ID := StrToInt(Respond.Root.Attributes['id']);
      finally
        DebugManager.Leave;
      end;
      Inc(Current);
    end;
  end;
  
  { TdbgpSetBreakpoint }
  
  function TdbgpSetBreakpoint.GetCommand: string;
  begin
    Result := 'breakpoint_set -t line -n ' + IntToStr(FileLine) + ' -f ' + FileNameToURI(FileName) + '';
  end;
  
  procedure TdbgpSetBreakpoint.DoExecute(Respond: TDebugCommandRespond);
  begin
    CheckError(Respond);
    BreakpointID := StrToInt(Respond.Root.Attributes['id']);
  end;
  
  { TdbgpRemoveBreakpoint }
  