anchor.diff:      Class Procedure CalcProofOfWork(const operationBlock : TOperationBlock; out PoW : TRawBytes);
       Class Function IsValidMinerBlockPayload(const newBlockPayload : TRawBytes) : Boolean;
       class procedure GetRewardDistributionForNewBlock(const OperationBlock : TOperationBlock; out acc_0_miner_reward, acc_4_dev_reward : Int64; out acc_4_for_dev : Boolean);
  +    class Function CalcSafeBoxHash(ABlocksHashBuffer : TBytesBuffer; protocol_version : Integer) : TRawBytes;
     end;
   
     TAccount = Record
  
positive.code: 
  uses
    Classes, SysUtils, UConst, UCrypto, SyncObjs, UThread, UBaseTypes,
    UPCOrderedLists, UPCDataTypes,
    {$IFNDEF FPC}System.Generics.Collections{$ELSE}Generics.Collections{$ENDIF};
  
  {$I config.inc}
  
negative.code: begin
    StartThreadSafe;
    try
      Result := TPascalCoinProtocol.CalcSafeBoxHash(FBufferBlocksHash,CurrentProtocol);
    finally
      EndThreadSave;
    end;
  