anchor.diff:        end;
         FTotalBalance := accounts.TotalBalance;
         FTotalFee := accounts.FTotalFee;
  -      FBufferBlocksHash := accounts.FBufferBlocksHash;
  +      FBufferBlocksHash.CopyFrom(accounts.FBufferBlocksHash);
         FSafeBoxHash := accounts.FSafeBoxHash;
         FWorkSum := accounts.FWorkSum;
         FCurrentProtocol := accounts.FCurrentProtocol;
  
positive.code:       If TBaseType.BinStrComp(FPreviousSafeBox.FSafeBoxHash,FSafeBoxHash)<>0 then begin
          errors := errors+'> Invalid SafeBoxHash!';
        end;
        If TBaseType.BinStrComp(FPreviousSafeBox.FBufferBlocksHash,FBufferBlocksHash)<>0 then begin
          errors := errors+'> Invalid BufferBlocksHash!';
        end;
        If (FPreviousSafeBox.FTotalBalance<>FTotalBalance) then begin
  
negative.code:     ToTMemBlockAccount(Result,Pblock^);
      FBlockAccountsList.Add(Pblock);
    end;
    FBufferBlocksHash.Add(Result.block_hash[1],Length(Result.block_hash));
    Inc(FTotalBalance,blockChain.reward + blockChain.fee);
    Dec(FTotalFee, blockChain.fee);
    If (length(accs_miner)>0) then begin
  