Blocks
Block consist of transactions with the same witnessGroupId field value. Blocks are formed by Consiliums in accordance with the Rules. The block structure is generally similar to the bitcoin block structure except witnessGroupId, which determines its belonging to a certain Consilium.
Example of a block serialization:

message BlockHeader {
repeated bytes parentHashes = 1; bytes merkleRoot = 2;
uint32 witnessGroupId = 3; uint32 timestamp = 6;
uint32 version = 7;}
message Block { BlockHeader header = 1;
repeated Transaction txns = 2; repeated bytes signatures = 3;}
The general structure of the block is shown in the diagram: