0 txs
5 calls
constructor
No constructor.
functions
burnAmount
viewfunction burnAmount() view returns (uint256)
burner
viewfunction burner() view returns (address)
calculateL2TokenAddress
viewfunction calculateL2TokenAddress(address l1ERC20) view returns (address)
counterpartGateway
viewfunction counterpartGateway() view returns (address)
depositsPaused
viewfunction depositsPaused() view returns (bool)
encodeWithdrawal
purefunction encodeWithdrawal(uint256 _exitNum, address _initialDestination) pure returns (bytes32)
getExternalCall
viewfunction getExternalCall(uint256 _exitNum, address _initialDestination, bytes _initialData) view returns (address target, bytes data)
getOutboundCalldata
viewfunction getOutboundCalldata(address _l1Token, address _from, address _to, uint256 _amount, bytes _data) view returns (bytes outboundCalldata)
inbox
viewfunction inbox() view returns (address)
l1USDC
viewfunction l1USDC() view returns (address)
l2USDC
viewfunction l2USDC() view returns (address)
owner
viewfunction owner() view returns (address)
redirectedExits
viewfunction redirectedExits(bytes32) view returns (bool isExit, address _newTo, bytes _newData)
router
viewfunction router() view returns (address)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
burnLockedUSDC
nonpayablefunction burnLockedUSDC()
finalizeInboundTransfer
payablefunction finalizeInboundTransfer(address _token, address _from, address _to, uint256 _amount, bytes _data) payable
initialize
nonpayablefunction initialize(address _l2Counterpart, address _l1Router, address _inbox, address _l1USDC, address _l2USDC, address _owner)
outboundTransfer
payablefunction outboundTransfer(address _l1Token, address _to, uint256 _amount, uint256 _maxGas, uint256 _gasPriceBid, bytes _data) payable returns (bytes res)
outboundTransferCustomRefund
payablefunction outboundTransferCustomRefund(address _l1Token, address _refundTo, address _to, uint256 _amount, uint256 _maxGas, uint256 _gasPriceBid, bytes _data) payable returns (bytes res)
pauseDeposits
nonpayablefunction pauseDeposits()
postUpgradeInit
nonpayablefunction postUpgradeInit()
setBurnAmount
nonpayablefunction setBurnAmount(uint256 _burnAmount)
setBurner
nonpayablefunction setBurner(address newBurner)
setOwner
nonpayablefunction setOwner(address newOwner)
transferExitAndCall
nonpayablefunction transferExitAndCall(uint256 _exitNum, address _initialDestination, address _newDestination, bytes _newData, bytes _data)
unpauseDeposits
nonpayablefunction unpauseDeposits()
events
BurnAmountSet
event BurnAmountSet(uint256 amount)
BurnerSet
event BurnerSet(address indexed burner)
DepositInitiated
event DepositInitiated(address l1Token, address indexed _from, address indexed _to, uint256 indexed _sequenceNumber, uint256 _amount)
DepositsPaused
event DepositsPaused()
DepositsUnpaused
event DepositsUnpaused()
GatewayUsdcBurned
event GatewayUsdcBurned(uint256 amount)
TxToL2
event TxToL2(address indexed _from, address indexed _to, uint256 indexed _seqNum, bytes _data)
WithdrawalFinalized
event WithdrawalFinalized(address l1Token, address indexed _from, address indexed _to, uint256 indexed _exitNum, uint256 _amount)
WithdrawRedirected
event WithdrawRedirected(address indexed from, address indexed to, uint256 indexed exitNum, bytes newData, bytes data, bool madeExternalCall)
errors
L1USDCGateway_BurnAmountNotSet
error L1USDCGateway_BurnAmountNotSet()
L1USDCGateway_DepositsAlreadyPaused
error L1USDCGateway_DepositsAlreadyPaused()
L1USDCGateway_DepositsAlreadyUnpaused
error L1USDCGateway_DepositsAlreadyUnpaused()
L1USDCGateway_DepositsNotPaused
error L1USDCGateway_DepositsNotPaused()
L1USDCGateway_DepositsPaused
error L1USDCGateway_DepositsPaused()
L1USDCGateway_InvalidL1USDC
error L1USDCGateway_InvalidL1USDC()
L1USDCGateway_InvalidL2USDC
error L1USDCGateway_InvalidL2USDC()
L1USDCGateway_InvalidOwner
error L1USDCGateway_InvalidOwner()
L1USDCGateway_NotBurner
error L1USDCGateway_NotBurner()
L1USDCGateway_NotOwner
error L1USDCGateway_NotOwner()
creation bytecode
0x608060405234801561001057600080fd5b50612841806100206000396000f3fe60806040526004361061016c5760003560e01c80638da5cb5b116100cc578063bd5f3e7d1161007a578063bd5f3e7d146103f0578063cc2a9a5b14610410578063cc43f3d314610430578063d2ce7d6514610450578063f68a908214610463578063f887ea4014610491578063fb0e722b146104b157600080fd5b80638da5cb5b1461030c57806395fcea781461032c578063a0c76a9614610341578063a6f7366914610361578063a7e28d4814610381578063a996d6ce146103a1578063bcf2e6eb146103c157600080fd5b80632db09c1c116101295780632db09c1c146102585780632e567b3614610278578063486a7e6b1461028b5780634fb1a07b146102a157806360da3e83146102c157806363d8882a146102e25780638a5e52bb146102f757600080fd5b806301ffc9a714610171578063020a6058146101a657806302191980146101d457806313af4035146101eb57806327810b6e1461020b57806329e96f9e14610238575b600080fd5b34801561017d57600080fd5b5061019161018c366004611dc0565b6104d1565b60405190151581526020015b60405180910390f35b3480156101b257600080fd5b506101c66101c1366004611dff565b610508565b60405190815260200161019d565b3480156101e057600080fd5b506101e961054d565b005b3480156101f757600080fd5b506101e9610206366004611e2f565b6105e1565b34801561021757600080fd5b5060075461022b906001600160a01b031681565b60405161019d9190611e4c565b34801561024457600080fd5b5060055461022b906001600160a01b031681565b34801561026457600080fd5b5060005461022b906001600160a01b031681565b6101e9610286366004611ea1565b610655565b34801561029757600080fd5b506101c660085481565b6102b46102af366004611f25565b6107c2565b60405161019d919061200c565b3480156102cd57600080fd5b5060075461019190600160a01b900460ff1681565b3480156102ee57600080fd5b506101e961080d565b34801561030357600080fd5b506101e961089a565b34801561031857600080fd5b5060065461022b906001600160a01b031681565b34801561033857600080fd5b506101e96109b1565b34801561034d57600080fd5b506102b461035c3660046120e2565b610a29565b34801561036d57600080fd5b5060045461022b906001600160a01b031681565b34801561038d57600080fd5b5061022b61039c366004611e2f565b610aa3565b3480156103ad57600080fd5b506101e96103bc366004611e2f565b610ad4565b3480156103cd57600080fd5b506103e16103dc366004612160565b610b49565b60405161019d93929190612179565b3480156103fc57600080fd5b506101e961040b3660046121ae565b610c02565b34801561041c57600080fd5b506101e961042b36600461224c565b610e62565b34801561043c57600080fd5b506101e961044b366004612160565b610f24565b6102b461045e3660046122ce565b610f84565b34801561046f57600080fd5b5061048361047e366004612340565b610fa2565b60405161019d929190612398565b34801561049d57600080fd5b5060015461022b906001600160a01b031681565b3480156104bd57600080fd5b5060025461022b906001600160a01b031681565b60006001600160e01b03198216634fb1a07b60e01b148061050257506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000828260405160200161052f9291909182526001600160a01b0316602082015260400190565b60405160208183030381529060405280519060200120905092915050565b6006546001600160a01b0316331461057857604051632271b4d960e01b815260040160405180910390fd5b600754600160a01b900460ff16156105a3576040516317b30f8f60e21b815260040160405180910390fd5b6007805460ff60a01b1916600160a01b1790556040517fdeeb69430b7153361c25d630947115165636e6a723fa8daea4b0de34b324745990600090a1565b6006546001600160a01b0316331461060c57604051632271b4d960e01b815260040160405180910390fd5b6001600160a01b0381166106335760405163275163ef60e11b815260040160405180910390fd5b600680546001600160a01b0319166001600160a01b0392909216919091179055565b6002546001600160a01b0316600061066c82611092565b9050336001600160a01b038216146106bd5760405162461bcd60e51b815260206004820152600f60248201526e4e4f545f46524f4d5f42524944474560881b60448201526064015b60405180910390fd5b60006106c8836110f6565b6000549091506001600160a01b038083169116146107235760405162461bcd60e51b81526020600482015260186024820152774f4e4c595f434f554e544552504152545f4741544557415960401b60448201526064016106b4565b6000806107308787611214565b91509150805160001461074e57506040805160208101909152600081525b610759828a83610fa2565b5098506107678b8a8a61122f565b81896001600160a01b03168b6001600160a01b03167f891afe029c75c4f8c5855fc3480598bc5a53739344f6ae575bdb7ea2a79f56b38e8c6040516107ad9291906123bc565b60405180910390a45050505050505050505050565b600754606090600160a01b900460ff16156107f057604051631e91330760e01b815260040160405180910390fd5b6108008989898989898989611248565b9998505050505050505050565b6006546001600160a01b0316331461083857604051632271b4d960e01b815260040160405180910390fd5b600754600160a01b900460ff1661086257604051633c79d8fb60e11b815260040160405180910390fd5b6007805460ff60a01b191690556040517f823084e804e36d8971e8b86749b6b0ace7b9f87ed272bef910c1e72d123eeb4890600090a1565b6007546001600160a01b031633146108c557604051634bb8101b60e01b815260040160405180910390fd5b600754600160a01b900460ff166108ef5760405163e7ba7f2d60e01b815260040160405180910390fd5b600854600081900361091457604051633d2a37af60e11b815260040160405180910390fd5b600060085560048054604051630852cd8d60e31b81529182018390526001600160a01b0316906342966c6890602401600060405180830381600087803b15801561095d57600080fd5b505af1158015610971573d6000803e3d6000fd5b505050507f875ebfbaf31c5b6648deb7039af2064f9ab191f12c61a2ad58b976c5bf8f0dab816040516109a691815260200190565b60405180910390a150565b60006109db7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b9050336001600160a01b03821614610a265760405162461bcd60e51b815260206004820152600e60248201526d2727aa2fa32927a6afa0a226a4a760911b60448201526064016106b4565b50565b60408051602081019091526000815260609063172b3d9b60e11b87878787610a518689611498565b604051602401610a659594939291906123d5565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915291505095945050505050565b6004546000906001600160a01b03838116911614610ac357506000919050565b50506005546001600160a01b031690565b6006546001600160a01b03163314610aff57604051632271b4d960e01b815260040160405180910390fd5b600780546001600160a01b0319166001600160a01b0383169081179091556040517fb8416bd024fad7407b849c69c89b0de56c1a383b7c7efba42c1e35dc1bf281cf90600090a250565b6003602052600090815260409020805460018201805460ff8316936101009093046001600160a01b0316929190610b7f90612410565b80601f0160208091040260200160405190810160405280929190818152602001828054610bab90612410565b8015610bf85780601f10610bcd57610100808354040283529160200191610bf8565b820191906000526020600020905b815481529060010190602001808311610bdb57829003601f168201915b5050505050905083565b6000610c1e888860405180602001604052806000815250610fa2565b509050336001600160a01b03821614610c6f5760405162461bcd60e51b81526020600482015260136024820152722727aa2fa2ac2822a1aa22a22fa9a2a72222a960691b60448201526064016106b4565b8315610caf5760405162461bcd60e51b815260206004820152600f60248201526e1393d7d110551057d0531313d5d151608a1b60448201526064016106b4565b610cf188888888888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506114c492505050565b8115610dfe576001600160a01b0386163b610d405760405162461bcd60e51b815260206004820152600f60248201526e1513d7d393d517d0d3d395149050d5608a1b60448201526064016106b4565b604051630592e20760e41b81526000906001600160a01b0388169063592e207090610d759085908d9089908990600401612473565b6020604051808303816000875af1158015610d94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db8919061249b565b905080610dfc5760405162461bcd60e51b81526020600482015260126024820152711514905394d1915497d213d3d2d7d190525360721b60448201526064016106b4565b505b87866001600160a01b0316826001600160a01b03167f56735ccb9dc7d2222ce4177fc3aea44c33882e2a2c73e0fb1c6b93c9c13a04d48888888860008b8b905011604051610e509594939291906124bd565b60405180910390a45050505050505050565b6001600160a01b038316610e89576040516324bf08eb60e01b815260040160405180910390fd5b6001600160a01b038216610eb057604051632db2ac2960e01b815260040160405180910390fd5b6001600160a01b038116610ed75760405163275163ef60e11b815260040160405180910390fd5b610ee2868686611556565b600480546001600160a01b039485166001600160a01b031991821617909155600580549385169382169390931790925560068054919093169116179055505050565b6006546001600160a01b03163314610f4f57604051632271b4d960e01b815260040160405180910390fd5b60088190556040518181527f38acaebd0e3affc51737125878fe1e25cb5fdb627b3778416219d82f81ef42f8906020016109a6565b6060610f9688888989898989896107c2565b98975050505050505050565b600060606000610fb28686610508565b600081815260036020526040902080549192509060ff1615611081578060000160019054906101000a90046001600160a01b031681600101808054610ff690612410565b80601f016020809104026020016040519081016040528092919081815260200182805461102290612410565b801561106f5780601f106110445761010080835404028352916020019161106f565b820191906000526020600020905b81548152906001019060200180831161105257829003601f168201915b5050505050905093509350505061108a565b85859350935050505b935093915050565b6000816001600160a01b031663e78cea926040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110d2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061050291906124f9565b60008061110283611092565b6001600160a01b031663ab5d89436040518163ffffffff1660e01b8152600401602060405180830381865afa15801561113f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116391906124f9565b90506000816001600160a01b03166380648b026040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111c991906124f9565b90506001600160a01b03811661120d5760405162461bcd60e51b81526020600482015260096024820152682727afa9a2a72222a960b91b60448201526064016106b4565b9392505050565b6000606061122483850185612516565b909590945092505050565b6112436001600160a01b0384168383611609565b505050565b60606112533361165f565b6112915760405162461bcd60e51b815260206004820152600f60248201526e2727aa2fa32927a6afa927aaaa22a960891b60448201526064016106b4565b60008060606000806112a23361165f565b156112bb576112b18888611673565b90955092506112f8565b33945087878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505050505b6113018361168f565b81519195509193509091501561134f5760405162461bcd60e51b8152602060048201526013602482015272115615149057d110551057d11254d050931151606a1b60448201526064016106b4565b6001600160a01b038e163b6113985760405162461bcd60e51b815260206004820152600f60248201526e130c57d393d517d0d3d395149050d5608a1b60448201526064016106b4565b60006113a38f610aa3565b90506001600160a01b0381166113ed5760405162461bcd60e51b815260206004820152600f60248201526e1393d7d30c97d513d2d15397d4d155608a1b60448201526064016106b4565b6113f88f878e6116b6565b9b506114078f878f8f88610a29565b96506114198e878e8e8e88888e6117c3565b9450505050818a6001600160a01b0316846001600160a01b03167fb8910b9960c443aac3240b98585384e3a6f109fbf6969e264c3f183d69aba7e18f8d6040516114649291906123bc565b60405180910390a4604080516020810184905201604051602081830303815290604052935050505098975050505050505050565b606082826040516020016114ad92919061255c565b604051602081830303815290604052905092915050565b60006114d08585610508565b6040805160608101825260018082526001600160a01b038781166020808501918252848601898152600088815260039092529590208451815492516001600160a81b0319909316901515610100600160a81b031916176101009290931691909102919091178155925193945090929082019061154c90826125cf565b5050505050505050565b6115608383611818565b6001600160a01b0382166115a35760405162461bcd60e51b815260206004820152600a6024820152692120a22fa927aaaa22a960b11b60448201526064016106b4565b6001600160a01b0381166115e55760405162461bcd60e51b81526020600482015260096024820152680848288be929c849eb60bb1b60448201526064016106b4565b600280546001600160a01b0319166001600160a01b03929092169190911790555050565b6112438363a9059cbb60e01b84846040516024016116289291906123bc565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526118da565b6001546001600160a01b0391821691161490565b600060606116838385018561268e565b915091505b9250929050565b600060606000838060200190518101906116a991906126c7565b9196909550909350915050565b600080846001600160a01b03166370a08231306040518263ffffffff1660e01b81526004016116e59190611e4c565b602060405180830381865afa158015611702573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117269190612752565b905061173d6001600160a01b0386168530866119ac565b6040516370a0823160e01b81526000906001600160a01b038716906370a082319061176c903090600401611e4c565b602060405180830381865afa158015611789573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117ad9190612752565b90506117b9828261276b565b9695505050505050565b6000610800600260009054906101000a90046001600160a01b031660008054906101000a90046001600160a01b03168b8b87600060405180606001604052808c81526020018e81526020018d815250896119ea565b6001600160a01b0382166118645760405162461bcd60e51b81526020600482015260136024820152721253959053125117d0d3d55395115494105495606a1b60448201526064016106b4565b6000546001600160a01b0316156118ac5760405162461bcd60e51b815260206004820152600c60248201526b1053149150511657d253925560a21b60448201526064016106b4565b600080546001600160a01b039384166001600160a01b03199182161790915560018054929093169116179055565b600061192f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611a0a9092919063ffffffff16565b805190915015611243578080602001905181019061194d919061249b565b6112435760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016106b4565b6040516001600160a01b03808516602483015283166044820152606481018290526119e49085906323b872dd60e01b90608401611628565b50505050565b600061080089898989898989600001518a602001518b604001518b611a21565b6060611a198484600085611a93565b949350505050565b600080611a368c8c8c8c8c8c8c8c8c8c611b6e565b9050808b6001600160a01b03168a6001600160a01b03167fc1d1490cf25c3b40d600dfb27c7680340ed1ab901b7e8f3551280968a3b372b086604051611a7c919061200c565b60405180910390a49b9a5050505050505050505050565b606082471015611af45760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016106b4565b600080866001600160a01b03168587604051611b10919061278c565b60006040518083038185875af1925050503d8060008114611b4d576040519150601f19603f3d011682016040523d82523d6000602084013e611b52565b606091505b5091509150611b6387838387611d22565b979650505050505050565b600080611b7a8c611092565b6001600160a01b031663e1758bd86040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bdb91906124f9565b90506000816001600160a01b03166370a082318e6040518263ffffffff1660e01b8152600401611c0b9190611e4c565b602060405180830381865afa158015611c28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c4c9190612752565b905088811015611c92576000611c613361165f565b611c6b5733611c6d565b8a5b9050611c90818f611c7e858e61276b565b6001600160a01b0387169291906119ac565b505b50508a6001600160a01b031663549e84268b88888d8d8a8a8f8b6040518a63ffffffff1660e01b8152600401611cd0999897969594939291906127a8565b6020604051808303816000875af1158015611cef573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d139190612752565b9b9a5050505050505050505050565b60608315611d91578251600003611d8a576001600160a01b0385163b611d8a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016106b4565b5081611a19565b611a198383815115611da65781518083602001fd5b8060405162461bcd60e51b81526004016106b4919061200c565b600060208284031215611dd257600080fd5b81356001600160e01b03198116811461120d57600080fd5b6001600160a01b0381168114610a2657600080fd5b60008060408385031215611e1257600080fd5b823591506020830135611e2481611dea565b809150509250929050565b600060208284031215611e4157600080fd5b813561120d81611dea565b6001600160a01b0391909116815260200190565b60008083601f840112611e7257600080fd5b5081356001600160401b03811115611e8957600080fd5b60208301915083602082850101111561168857600080fd5b60008060008060008060a08789031215611eba57600080fd5b8635611ec581611dea565b95506020870135611ed581611dea565b94506040870135611ee581611dea565b93506060870135925060808701356001600160401b03811115611f0757600080fd5b611f1389828a01611e60565b979a9699509497509295939492505050565b60008060008060008060008060e0898b031215611f4157600080fd5b8835611f4c81611dea565b97506020890135611f5c81611dea565b96506040890135611f6c81611dea565b9550606089013594506080890135935060a0890135925060c08901356001600160401b03811115611f9c57600080fd5b611fa88b828c01611e60565b999c989b5096995094979396929594505050565b60005b83811015611fd7578181015183820152602001611fbf565b50506000910152565b60008151808452611ff8816020860160208601611fbc565b601f01601f19169290920160200192915050565b60208152600061120d6020830184611fe0565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b038111828210171561205d5761205d61201f565b604052919050565b60006001600160401b0382111561207e5761207e61201f565b50601f01601f191660200190565b600082601f83011261209d57600080fd5b81356120b06120ab82612065565b612035565b8181528460208386010111156120c557600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156120fa57600080fd5b853561210581611dea565b9450602086013561211581611dea565b9350604086013561212581611dea565b92506060860135915060808601356001600160401b0381111561214757600080fd5b6121538882890161208c565b9150509295509295909350565b60006020828403121561217257600080fd5b5035919050565b83151581526001600160a01b03831660208201526060604082018190526000906121a590830184611fe0565b95945050505050565b600080600080600080600060a0888a0312156121c957600080fd5b8735965060208801356121db81611dea565b955060408801356121eb81611dea565b945060608801356001600160401b038082111561220757600080fd5b6122138b838c01611e60565b909650945060808a013591508082111561222c57600080fd5b506122398a828b01611e60565b989b979a50959850939692959293505050565b60008060008060008060c0878903121561226557600080fd5b863561227081611dea565b9550602087013561228081611dea565b9450604087013561229081611dea565b935060608701356122a081611dea565b925060808701356122b081611dea565b915060a08701356122c081611dea565b809150509295509295509295565b600080600080600080600060c0888a0312156122e957600080fd5b87356122f481611dea565b9650602088013561230481611dea565b955060408801359450606088013593506080880135925060a08801356001600160401b0381111561233457600080fd5b6122398a828b01611e60565b60008060006060848603121561235557600080fd5b83359250602084013561236781611dea565b915060408401356001600160401b0381111561238257600080fd5b61238e8682870161208c565b9150509250925092565b6001600160a01b0383168152604060208201819052600090611a1990830184611fe0565b6001600160a01b03929092168252602082015260400190565b6001600160a01b0386811682528581166020830152841660408201526060810183905260a060808201819052600090611b6390830184611fe0565b600181811c9082168061242457607f821691505b60208210810361244457634e487b7160e01b600052602260045260246000fd5b50919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60018060a01b03851681528360208201526060604082015260006117b960608301848661244a565b6000602082840312156124ad57600080fd5b8151801515811461120d57600080fd5b6060815260006124d160608301878961244a565b82810360208401526124e481868861244a565b91505082151560408301529695505050505050565b60006020828403121561250b57600080fd5b815161120d81611dea565b6000806040838503121561252957600080fd5b8235915060208301356001600160401b0381111561254657600080fd5b6125528582860161208c565b9150509250929050565b60408152600061256f6040830185611fe0565b82810360208401526121a58185611fe0565b601f82111561124357600081815260208120601f850160051c810160208610156125a85750805b601f850160051c820191505b818110156125c7578281556001016125b4565b505050505050565b81516001600160401b038111156125e8576125e861201f565b6125fc816125f68454612410565b84612581565b602080601f83116001811461263157600084156126195750858301515b600019600386901b1c1916600185901b1785556125c7565b600085815260208120601f198616915b8281101561266057888601518255948401946001909101908401612641565b508582101561267e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600080604083850312156126a157600080fd5b82356126ac81611dea565b915060208301356001600160401b0381111561254657600080fd5b6000806000606084860312156126dc57600080fd5b8351925060208401516001600160401b038111156126f957600080fd5b8401601f8101861361270a57600080fd5b80516127186120ab82612065565b81815287602083850101111561272d57600080fd5b61273e826020830160208601611fbc565b809450505050604084015190509250925092565b60006020828403121561276457600080fd5b5051919050565b8181038181111561050257634e487b7160e01b600052601160045260246000fd5b6000825161279e818460208701611fbc565b9190910192915050565b600061012060018060a01b03808d1684528b60208501528a6040850152808a1660608501528089166080850152508660a08401528560c08401528460e0840152806101008401526127fb81840185611fe0565b9c9b50505050505050505050505056fea26469706673582212203fed02aa69b0b4df2d7a61ce2711c5a3aae7a5a2aa9c1c3a68cfd8143f76da0c64736f6c63430008100033