Note: Native gas token (gasUSDT) transfers between EOAs are restricted to prevent accidental transfers to centralized exchanges.
GaslessTxExecutor
contract to spend their USDT0 tokens.
GaslessTxExecutor
contract. The Stable backend account pays for the gas on behalf of the user.
permit
and transferFrom
on USDT0 Contract
Using the signed permit, the contract:
permit()
to register spending rights.transferFrom()
to transfer tokens.GaslessTxExecutor
contract to spend the user’s USDT0.
GaslessTxExecutor
contract. The Stable backend account pays for the gas on behalf of the user.
permit
on USDT0 Contract
The GaslessTxExecutor
contract calls the permit()
method on the USDT0 contract, using the signature to authorize token spending.
withdrawTo
on OStableWrapper Contract
The executor then invokes the withdrawTo()
method of the OStableWrapper
contract to begin the unwrap process.
OStableWrapper
contract:
transferFrom()
to actually move the tokens.OStableWrapper
.
mint()
function on the bank precompile module of the Stable chain.