Zkopru contract transfers the given amount of assets from the user's account to itself.
It verifies that the
note has a valid hash of the given information.
It merges the note to the last item of the
MassDeposit is a single
mergedLeaves bytes32 value to be used for rollup proof. Please check what is
mergedLeaves for rollup proof here. If the coordinator proposes a block including MassDeposits, the block appends all notes in the MassDeposit to its UTXO Merkle tree.
Coordinators can include only the "committed" MassDeposits that do not change anymore. To include a MassDeposit, the coordinator monitors the
Deposit event from the Zkopru contract.
It is important to push the deposits to the layer-2 as quickly as possible. Therefore, it freezes the latest MassDeposit when the coordinators propose every new block.
Yes, it is possible to include several MassDeposits at once in the range of maximum challengeable cost.