anchor.diff:        procedure ClientDisconnect(AContext: TIDContext);
   
         procedure GetPtData(json: TJsonObject; includeStaveni: Boolean);
  -      procedure GetPtStaveni(json: TJsonObject);
  +      procedure GetPtState(json: TJsonObject);
         procedure PostPtStav(reqJson: TJsonObject; respJson: TJsonObject);
   
         property data: TJCprop read fproperties write SetProperties;
  
positive.code: begin
   json['name'] := Self.fproperties.name;
   json['id'] := Self.fproperties.id;
   json['navId'] := Self.fproperties.navestidloBlok;
   case (Self.typ) of
    TJCType.vlak: json['typ'] := 'VC';
    TJCType.posun: json['typ'] := 'PC';
   end;
   case (Self.fproperties.dalsiNavaznost) of
    TJCNextNavType.zadna: json['dalsiNav'] := '-';
    TJCNextNavType.trat: json['dalsiNav'] := 'trat';
    TJCNextNavType.blok: begin
      json['dalsiNav'] := 'blok';
      json['dalsiNavId'] := Self.fproperties.dalsiNavestidlo;
    end;
   end;
  
   for vyhZaver in Self.fproperties.vyhybky do
    begin
     newObj := json.A['vyhybky'].AddObject();
     newObj['blok'] := vyhZaver.Blok;
     case (vyhZaver.Poloha) of
      TTurnoutPosition.plus: newObj['poloha'] := '+';
      TTurnoutPosition.minus: newObj['poloha'] := '-';
     end;
    end;
  
   for usek in Self.fproperties.useky do
     json.A['useky'].Add(usek);
  
   for odvratZaver in Self.fproperties.odvraty do
    begin
     newObj := json.A['odvraty'].AddObject();
     newObj['blok'] := odvratZaver.Blok;
     case (odvratZaver.Poloha) of
      TTurnoutPosition.plus: newObj['poloha'] := '+';
      TTurnoutPosition.minus: newObj['poloha'] := '-';
     end;
     newObj['refBlk'] := odvratZaver.ref_blk;
    end;
  
   for prjZaver in Self.fproperties.prejezdy do
    begin
     newObj := json.A['prejezdy'].AddObject();
     newObj['prejezd'] := prjZaver.Prejezd;
     newObj['oteviraci'] := prjZaver.oteviraci;
     for usek in prjZaver.uzaviraci do
       newObj.A['uzaviraci'].Add(usek);
    end;
  
   for refZaver in Self.fproperties.zamky do
    begin
     newObj := json.A['zamky'].AddObject();
     newObj['zamek'] := refZaver.Blok;
     newObj['refUsek'] := refZaver.ref_blk;
    end;
  
   for usek in Self.fproperties.vb do
  
negative.code: 
   if (Self.fproperties.Trat <> -1) then
    begin
     json['railway'] := Self.fproperties.Trat;
     json['railwayDir'] := Integer(Self.fproperties.TratSmer);
    end;
  
   json['speedGo'] := Self.fproperties.speedGo;
   json['speedStop'] := Self.fproperties.speedStop;
   json['turn'] := Self.fproperties.odbocka;
  
   if (includeStaveni) then
     Self.GetPtState(json['state']);
  end;
  
  procedure TJC.GetPtState(json: TJsonObject);
  begin
   json['activating'] := Self.staveni;
   json['active'] := Self.postaveno;
   json['step'] := Self.fstaveni.krok;
   json['destroyBlock'] := Self.fstaveni.rozpadBlok;
   json['destroyEndBlock'] := Self.fstaveni.rozpadRuseniBlok;
   json['ab'] := Self.AB;
  end;
  
  