package meta_transaction

const (
	SHARD_MARKER_OFFSET            = 0
	TRUNK_TRANSACTION_HASH_OFFSET  = SHARD_MARKER_END
	BRANCH_TRANSACTION_HASH_OFFSET = TRUNK_TRANSACTION_HASH_END
	HEAD_OFFSET                    = BRANCH_TRANSACTION_HASH_END
	TAIL_OFFSET                    = HEAD_END
	TRANSACTION_TYPE_OFFSET        = TAIL_END
	DATA_OFFSET                    = TRANSACTION_TYPE_END

	SHARD_MARKER_SIZE            = 12
	TRUNK_TRANSACTION_HASH_SIZE  = 243
	BRANCH_TRANSACTION_HASH_SIZE = 243
	HEAD_SIZE                    = 1
	TAIL_SIZE                    = 1
	TRANSACTION_TYPE_SIZE        = 22
	DATA_SIZE                    = 5000

	SHARD_MARKER_END            = SHARD_MARKER_OFFSET + SHARD_MARKER_SIZE
	TRUNK_TRANSACTION_HASH_END  = TRUNK_TRANSACTION_HASH_OFFSET + TRUNK_TRANSACTION_HASH_SIZE
	BRANCH_TRANSACTION_HASH_END = BRANCH_TRANSACTION_HASH_OFFSET + BRANCH_TRANSACTION_HASH_SIZE
	HEAD_END                    = HEAD_OFFSET + HEAD_SIZE
	TAIL_END                    = TAIL_OFFSET + TAIL_SIZE
	TRANSACTION_TYPE_END        = TRANSACTION_TYPE_OFFSET + TRANSACTION_TYPE_SIZE
	DATA_END                    = DATA_OFFSET + DATA_SIZE

	MARSHALLED_TOTAL_SIZE = DATA_END
)