JBSucker
Inherits: ERC2771Context, JBPermissioned, Initializable, ERC165, IJBSuckerExtended
An abstract contract for bridging a Juicebox project's tokens and the corresponding funds to and from a remote chain.
Beneficiaries and balances are tracked on two merkle trees: the outbox tree is used to send from the local chain to the remote chain, and the inbox tree is used to receive from the remote chain to the local chain.
Throughout this contract, "terminal token" refers to any token accepted by a project's terminal.
This contract does NOT support tokens that have a fee on regular transfers and rebasing tokens.
State Variables
MESSENGER_BASE_GAS_LIMIT
A reasonable minimum gas limit for a basic cross-chain call. The minimum amount of gas required to call
the fromRemote (successfully/safely) on the remote chain.
uint32 public constant override MESSENGER_BASE_GAS_LIMIT = 300_000;