0 txs
0 calls
constructor
constructor()
functions
allowedToken
viewfunction allowedToken(bytes32) view returns (address)
crossChainManagerAddress
viewfunction crossChainManagerAddress() view returns (address)
depositFeeEnabled
viewfunction depositFeeEnabled() view returns (bool)
depositId
viewfunction depositId() view returns (uint64)
getAllAllowedBroker
viewfunction getAllAllowedBroker() view returns (bytes32[])
getAllAllowedToken
viewfunction getAllAllowedToken() view returns (bytes32[])
getAllowedBroker
viewfunction getAllowedBroker(bytes32 _brokerHash) view returns (bool)
getAllowedToken
viewfunction getAllowedToken(bytes32 _tokenHash) view returns (address)
getDepositFee
viewfunction getDepositFee(address receiver, tuple data) view returns (uint256)
messageTransmitterContract
viewfunction messageTransmitterContract() view returns (address)
owner
viewfunction owner() view returns (address)
paused
viewfunction paused() view returns (bool)
tokenMessengerContract
viewfunction tokenMessengerContract() view returns (address)
changeTokenAddressAndAllow
nonpayablefunction changeTokenAddressAndAllow(bytes32 _tokenHash, address _tokenAddress)
deposit
payablefunction deposit(tuple data) payable
depositTo
payablefunction depositTo(address receiver, tuple data) payable
emergencyPause
nonpayablefunction emergencyPause()
emergencyUnpause
nonpayablefunction emergencyUnpause()
enableDepositFee
nonpayablefunction enableDepositFee(bool _enabled)
initialize
nonpayablefunction initialize()
rebalanceBurn
nonpayablefunction rebalanceBurn(tuple data)
rebalanceMint
nonpayablefunction rebalanceMint(tuple data)
renounceOwnership
nonpayablefunction renounceOwnership()
setAllowedBroker
nonpayablefunction setAllowedBroker(bytes32 _brokerHash, bool _allowed)
setAllowedToken
nonpayablefunction setAllowedToken(bytes32 _tokenHash, bool _allowed)
setCrossChainManager
nonpayablefunction setCrossChainManager(address _crossChainManagerAddress)
setRebalanceMessengerContract
nonpayablefunction setRebalanceMessengerContract(address _rebalanceMessengerContract)
setTokenMessengerContract
nonpayablefunction setTokenMessengerContract(address _tokenMessengerContract)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
withdraw
nonpayablefunction withdraw(tuple data)
events
AccountDeposit
event AccountDeposit(bytes32 indexed accountId, address indexed userAddress, uint64 indexed depositNonce, bytes32 tokenHash, uint128 tokenAmount)
AccountDepositTo
event AccountDepositTo(bytes32 indexed accountId, address indexed userAddress, uint64 indexed depositNonce, bytes32 tokenHash, uint128 tokenAmount)
AccountWithdraw
event AccountWithdraw(bytes32 indexed accountId, uint64 indexed withdrawNonce, bytes32 brokerHash, address sender, address receiver, bytes32 tokenHash, uint128 tokenAmount, uint128 fee)
ChangeCrossChainManager
event ChangeCrossChainManager(address oldAddress, address newAddress)
ChangeTokenAddressAndAllow
event ChangeTokenAddressAndAllow(bytes32 indexed _tokenHash, address _tokenAddress)
Initialized
event Initialized(uint8 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
Paused
event Paused(address account)
SetAllowedBroker
event SetAllowedBroker(bytes32 indexed _brokerHash, bool _allowed)
SetAllowedToken
event SetAllowedToken(bytes32 indexed _tokenHash, bool _allowed)
Unpaused
event Unpaused(address account)
errors
AccountIdInvalid
error AccountIdInvalid()
AddressZero
error AddressZero()
BalanceNotEnough
error BalanceNotEnough(uint256 balance, uint128 amount)
BrokerNotAllowed
error BrokerNotAllowed()
EnumerableSetError
error EnumerableSetError()
OnlyCrossChainManagerCanCall
error OnlyCrossChainManagerCanCall()
TokenNotAllowed
error TokenNotAllowed()
ZeroDeposit
error ZeroDeposit()
ZeroDepositFee
error ZeroDepositFee()
creation bytecode
0x60806040523480156200001157600080fd5b506200001c62000022565b620000e3565b600054610100900460ff16156200008f5760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811614620000e1576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b61282480620000f36000396000f3fe6080604052600436106101cc5760003560e01c806394936b3d116100f7578063c9fc879711610095578063df0f4ae711610064578063df0f4ae714610531578063e6b40bf214610551578063f2fde38b1461056b578063f649e01b1461058b57600080fd5b8063c9fc8797146104bc578063cb76efdf146104dc578063d2c493fd146104fc578063d6aeb4311461051c57600080fd5b8063b182dc69116100d1578063b182dc6914610449578063b1f6c86814610469578063ba46a17714610489578063c7eeb9c21461049c57600080fd5b806394936b3d146103c85780639852099c146103e857806398c2d0861461042957600080fd5b80635c975abb1161016f5780638129fc1c1161013e5780638129fc1c1461034e5780638bc2714e146103635780638da5cb5b146103885780639305a91a146103a657600080fd5b80635c975abb146102cb5780635e1eb4ce146102e3578063681d527c14610303578063715018a61461033957600080fd5b8063322dda6d116101ab578063322dda6d146102565780633d8afb53146102695780634a4e3bd5146102a157806351858e27146102b657600080fd5b806274f419146101d157806311e2e8c214610204578063258082f514610226575b600080fd5b3480156101dd57600080fd5b506101f16101ec366004612268565b6105ab565b6040519081526020015b60405180910390f35b34801561021057600080fd5b5061022461021f36600461229c565b610720565b005b34801561023257600080fd5b506102466102413660046122bf565b6107d4565b60405190151581526020016101fb565b6102246102643660046122d8565b6107e1565b34801561027557600080fd5b50609e54610289906001600160a01b031681565b6040516001600160a01b0390911681526020016101fb565b3480156102ad57600080fd5b506102246107f6565b3480156102c257600080fd5b50610224610810565b3480156102d757600080fd5b5060335460ff16610246565b3480156102ef57600080fd5b506102246102fe3660046122f4565b610828565b34801561030f57600080fd5b5061028961031e3660046122bf565b609c602052600090815260409020546001600160a01b031681565b34801561034557600080fd5b506102246108cf565b34801561035a57600080fd5b506102246108e1565b34801561036f57600080fd5b50609d546102899061010090046001600160a01b031681565b34801561039457600080fd5b506065546001600160a01b0316610289565b3480156103b257600080fd5b506103bb610a0d565b6040516101fb919061230f565b3480156103d457600080fd5b506102246103e33660046122f4565b610a1e565b3480156103f457600080fd5b5060975461041090600160a01b900467ffffffffffffffff1681565b60405167ffffffffffffffff90911681526020016101fb565b34801561043557600080fd5b50610224610444366004612353565b610a7e565b34801561045557600080fd5b50609754610289906001600160a01b031681565b34801561047557600080fd5b50610224610484366004612378565b610c98565b610224610497366004612268565b610fb6565b3480156104a857600080fd5b506102896104b73660046122bf565b610fc8565b3480156104c857600080fd5b506102246104d73660046123a2565b611003565b3480156104e857600080fd5b506102246104f73660046123d2565b6110ba565b34801561050857600080fd5b506102246105173660046123ef565b6110dd565b34801561052857600080fd5b506103bb61129b565b34801561053d57600080fd5b5061022461054c3660046123a2565b6112a7565b34801561055d57600080fd5b50609d546102469060ff1681565b34801561057757600080fd5b506102246105863660046122f4565b611329565b34801561059757600080fd5b506102246105a63660046122f4565b6113b6565b60006105b5611426565b6105bf8383611479565b60006040518060c0016040528084600001358152602001856001600160a01b03168152602001846020013581526020018460400135815260200184606001602081019061060c919061243b565b6001600160801b0316815260975460209091019061063c90600160a01b900467ffffffffffffffff16600161246c565b67ffffffffffffffff908116909152609754604080517f2690952b0000000000000000000000000000000000000000000000000000000081528451600482015260208501516001600160a01b0390811660248301529185015160448201526060850151606482015260808501516001600160801b0316608482015260a085015190931660a48401529293509190911690632690952b9060c401602060405180830381865afa1580156106f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610716919061248d565b9150505b92915050565b6107286115c3565b806001600160a01b03811661075057604051639fabe1c160e01b815260040160405180910390fd5b6000838152609c60205260409020805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b03841617905561078f609a8461161d565b506040516001600160a01b038316815283907fdd5c3f86e468e8e3d0da2fcfd07779497eec7c153f181f4859a704d66e2444f8906020015b60405180910390a2505050565b600061071a609883611630565b6107e9611426565b6107f33382611648565b50565b6107fe61195c565b6108066115c3565b61080e6119ae565b565b610818611426565b6108206115c3565b61080e611a00565b6108306115c3565b806001600160a01b03811661085857604051639fabe1c160e01b815260040160405180910390fd5b609754604080516001600160a01b03928316815291841660208301527f171f28064de7df65eb845ec06e0161ab312efa47a10fee262fab3dac2f33e80a910160405180910390a1506097805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6108d76115c3565b61080e6000611a3d565b600054610100900460ff16158080156109015750600054600160ff909116105b8061091b5750303b15801561091b575060005460ff166001145b6109925760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b6000805460ff1916600117905580156109b5576000805461ff0019166101001790555b6109bd611a9c565b6109c5611b0f565b80156107f3576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150565b6060610a19609a611b82565b905090565b610a266115c3565b806001600160a01b038116610a4e57604051639fabe1c160e01b815260040160405180910390fd5b50609e805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6097546001600160a01b03163314610aa95760405163833d33e760e01b815260040160405180910390fd5b610ab1611426565b6097546040517f98c2d0860000000000000000000000000000000000000000000000000000000081526001600160a01b03909116906398c2d08690610afa9084906004016124bc565b600060405180830381600087803b158015610b1457600080fd5b505af1158015610b28573d6000803e3d6000fd5b505050506040808201356000908152609c602052908120546001600160a01b031690610b5a60a084016080850161243b565b610b6a608085016060860161243b565b610b74919061255e565b90506000610b8860e0850160c086016122f4565b6001600160a01b031614610bc357610bc3610ba960e0850160c086016122f4565b6001600160a01b038416906001600160801b038416611b8f565b610bd4610100840160e0850161257e565b67ffffffffffffffff1683357f732a6fe7863c74cbd74d2f2b1e3c27304465e354a9d38f03bf10c8436a70aa276020860135610c1660c0880160a089016122f4565b610c2660e0890160c08a016122f4565b6040890135610c3b60808b0160608c0161243b565b610c4b60a08c0160808d0161243b565b604080519687526001600160a01b039586166020880152949093169385019390935260608401526001600160801b0391821660808401521660a082015260c00160405180910390a3505050565b6097546001600160a01b03163314610cc35760405163833d33e760e01b815260040160405180910390fd5b60608101356000908152609c60205260409020546001600160a01b031680610cfe57604051639fabe1c160e01b815260040160405180910390fd5b609d546001600160a01b038083169163095ea7b39161010090910416610d2a606086016040870161243b565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526001600160801b031660248201526044016020604051808303816000875af1158015610d96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dba919061259b565b50609d5461010090046001600160a01b0316636fd3504e610de1606085016040860161243b565b610dee60208601866125b8565b610e06610e0160e0880160c089016122f4565b611c3d565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b1681526001600160801b03909316600484015263ffffffff91909116602483015260448201526001600160a01b03841660648201526084016020604051808303816000875af1925050508015610ea2575060408051601f3d908101601f19168201909252610e9f918101906125de565b60015b610f79576097546040805160c081018252600081526001600160a01b0390921691633a8c589991602080830191610ede9190880190880161257e565b67ffffffffffffffff168152602001610efd606087016040880161243b565b6001600160801b0316815260200185606001358152602001856080013581526020018560a001358152506040518263ffffffff1660e01b8152600401610f4391906125fb565b600060405180830381600087803b158015610f5d57600080fd5b505af1158015610f71573d6000803e3d6000fd5b505050505050565b506097546040805160c081018252600181526001600160a01b0390921691633a8c589991602080830191610ede9190880190880161257e565b5050565b610fbe611426565b610fb28282611648565b6000610fd5609a83611630565b15610ff657506000908152609c60205260409020546001600160a01b031690565b506000919050565b919050565b61100b6115c3565b6000811561105a576000838152609c60205260409020546001600160a01b031661104857604051639fabe1c160e01b815260040160405180910390fd5b611053609a8461161d565b9050611068565b611065609a84611c6c565b90505b806110865760405163a65b249b60e01b815260040160405180910390fd5b827f75982e4722797db7bbfd209216413b5edd134de5cd687de171dd12deeee642ff836040516107c7911515815260200190565b6110c26115c3565b6110ca611426565b609d805460ff1916911515919091179055565b6097546001600160a01b031633146111085760405163833d33e760e01b815260040160405180910390fd5b609e546001600160a01b03166357ecfd2861112660a0840184612653565b61113360c0860186612653565b6040518563ffffffff1660e01b815260040161115294939291906126ca565b6020604051808303816000875af192505050801561118d575060408051601f3d908101601f1916820190925261118a9181019061259b565b60015b611264576097546040805160c08101909152600081526001600160a01b03909116906358a12670906020808201906111c79086018661257e565b67ffffffffffffffff1681526020018460200160208101906111e9919061243b565b6001600160801b03168152602001846040013581526020018460600135815260200184608001358152506040518263ffffffff1660e01b815260040161122f91906125fb565b600060405180830381600087803b15801561124957600080fd5b505af115801561125d573d6000803e3d6000fd5b5050505050565b506097546040805160c08101909152600181526001600160a01b03909116906358a12670906020808201906111c79086018661257e565b6060610a196098611b82565b6112af6115c3565b600081156112c9576112c260988461161d565b90506112d7565b6112d4609884611c6c565b90505b806112f55760405163a65b249b60e01b815260040160405180910390fd5b827fe2004c296ac9fa6b9b57d55d8bbe257982d1111c229081bb672d5ddbec7f2606836040516107c7911515815260200190565b6113316115c3565b6001600160a01b0381166113ad5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610989565b6107f381611a3d565b6113be6115c3565b806001600160a01b0381166113e657604051639fabe1c160e01b815260040160405180910390fd5b50609d80546001600160a01b03909216610100027fffffffffffffffffffffff0000000000000000000000000000000000000000ff909216919091179055565b60335460ff161561080e5760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610989565b611488609a6040830135611630565b6114be576040517fa29c498600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6114cd60986020830135611630565b611503576040517f59d9b86300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080516001600160a01b038416602082810191909152808401358284015282518083038401815260609092019092528051910120813514611571576040517fc7ee9ce600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611581608082016060830161243b565b6001600160801b0316600003610fb2576040517f56316e8700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6065546001600160a01b0316331461080e5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610989565b60006116298383611c78565b9392505050565b60008181526001830160205260408120541515611629565b611650611426565b61165a8282611479565b6040808201356000908152609c60205220546001600160a01b03166116a5333061168a608086016060870161243b565b6001600160a01b0385169291906001600160801b0316611cc7565b60006040518060c0016040528084600001358152602001856001600160a01b0316815260200184602001358152602001846040013581526020018460600160208101906116f2919061243b565b6001600160801b03168152602001611708611d1e565b67ffffffffffffffff169052609d5490915060ff1615611821573460000361175c576040517f93d3bb4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b609754604080517f2b0646120000000000000000000000000000000000000000000000000000000081528351600482015260208401516001600160a01b0390811660248301529184015160448201526060840151606482015260808401516001600160801b0316608482015260a084015167ffffffffffffffff1660a4820152911690632b06461290349060c4016000604051808303818588803b15801561180357600080fd5b505af1158015611817573d6000803e3d6000fd5b50505050506118e0565b609754604080517fa8f0d0700000000000000000000000000000000000000000000000000000000081528351600482015260208401516001600160a01b0390811660248301529184015160448201526060840151606482015260808401516001600160801b0316608482015260a084015167ffffffffffffffff1660a482015291169063a8f0d0709060c401600060405180830381600087803b1580156118c757600080fd5b505af11580156118db573d6000803e3d6000fd5b505050505b609754600160a01b900467ffffffffffffffff166001600160a01b03851684357f11f843b2ed43e9b4b568b4dff0c777a6c5ca538b4115a6149f28bce4bea9014860408701356119366080890160608a0161243b565b604080519283526001600160801b0390911660208301520160405180910390a450505050565b60335460ff1661080e5760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610989565b6119b661195c565b6033805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b611a08611426565b6033805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586119e33390565b606580546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff16611b075760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610989565b61080e611d6c565b600054610100900460ff16611b7a5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610989565b61080e611de0565b6060600061162983611e57565b6040516001600160a01b038316602482015260448101829052611c389084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b60408051601f198184030181529190526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152611eb3565b505050565b604080516001600160a01b03831660208201526000910160405160208183030381529060405261071a906126f1565b60006116298383611f98565b6000818152600183016020526040812054611cbf5750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561071a565b50600061071a565b6040516001600160a01b0380851660248301528316604482015260648101829052611d189085907f23b872dd0000000000000000000000000000000000000000000000000000000090608401611bd4565b50505050565b60006097601481819054906101000a900467ffffffffffffffff16611d4290612715565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055905090565b600054610100900460ff16611dd75760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610989565b61080e33611a3d565b600054610100900460ff16611e4b5760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610989565b6033805460ff19169055565b606081600001805480602002602001604051908101604052809291908181526020018280548015611ea757602002820191906000526020600020905b815481526020019060010190808311611e93575b50505050509050919050565b6000611f08826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166120929092919063ffffffff16565b805190915015611c385780806020019051810190611f26919061259b565b611c385760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610989565b60008181526001830160205260408120548015612081576000611fbc60018361273c565b8554909150600090611fd09060019061273c565b9050818114612035576000866000018281548110611ff057611ff061274f565b90600052602060002001549050808760000184815481106120135761201361274f565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061204657612046612765565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061071a565b600091505061071a565b5092915050565b60606120a184846000856120a9565b949350505050565b6060824710156121215760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610989565b600080866001600160a01b0316858760405161213d919061279f565b60006040518083038185875af1925050503d806000811461217a576040519150601f19603f3d011682016040523d82523d6000602084013e61217f565b606091505b50915091506121908783838761219b565b979650505050505050565b6060831561220a578251600003612203576001600160a01b0385163b6122035760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610989565b50816120a1565b6120a1838381511561221f5781518083602001fd5b8060405162461bcd60e51b815260040161098991906127bb565b80356001600160a01b0381168114610ffe57600080fd5b60006080828403121561226257600080fd5b50919050565b60008060a0838503121561227b57600080fd5b61228483612239565b91506122938460208501612250565b90509250929050565b600080604083850312156122af57600080fd5b8235915061229360208401612239565b6000602082840312156122d157600080fd5b5035919050565b6000608082840312156122ea57600080fd5b6116298383612250565b60006020828403121561230657600080fd5b61162982612239565b6020808252825182820181905260009190848201906040850190845b818110156123475783518352928401929184019160010161232b565b50909695505050505050565b6000610100828403121561226257600080fd5b600060e0828403121561226257600080fd5b600060e0828403121561238a57600080fd5b6116298383612366565b80151581146107f357600080fd5b600080604083850312156123b557600080fd5b8235915060208301356123c781612394565b809150509250929050565b6000602082840312156123e457600080fd5b813561162981612394565b60006020828403121561240157600080fd5b813567ffffffffffffffff81111561241857600080fd5b61071684828501612366565b80356001600160801b0381168114610ffe57600080fd5b60006020828403121561244d57600080fd5b61162982612424565b634e487b7160e01b600052601160045260246000fd5b67ffffffffffffffff81811683821601908082111561208b5761208b612456565b60006020828403121561249f57600080fd5b5051919050565b67ffffffffffffffff811681146107f357600080fd5b81358152602080830135908201526040808301359082015261010081016124e560608401612424565b6001600160801b0380821660608501528061250260808701612424565b166080850152505061251660a08401612239565b6001600160a01b0380821660a08501528061253360c08701612239565b1660c0850152505060e0830135612549816124a6565b67ffffffffffffffff811660e084015261208b565b6001600160801b0382811682821603908082111561208b5761208b612456565b60006020828403121561259057600080fd5b8135611629816124a6565b6000602082840312156125ad57600080fd5b815161162981612394565b6000602082840312156125ca57600080fd5b813563ffffffff8116811461162957600080fd5b6000602082840312156125f057600080fd5b8151611629816124a6565b60c0810161071a828480511515825267ffffffffffffffff60208201511660208301526001600160801b036040820151166040830152606081015160608301526080810151608083015260a081015160a08301525050565b6000808335601e1984360301811261266a57600080fd5b83018035915067ffffffffffffffff82111561268557600080fd5b60200191503681900382131561269a57600080fd5b9250929050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6040815260006126de6040830186886126a1565b82810360208401526121908185876126a1565b805160208083015191908110156122625760001960209190910360031b1b16919050565b600067ffffffffffffffff80831681810361273257612732612456565b6001019392505050565b8181038181111561071a5761071a612456565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b60005b8381101561279657818101518382015260200161277e565b50506000910152565b600082516127b181846020870161277b565b9190910192915050565b60208152600082518060208401526127da81604085016020870161277b565b601f01601f1916919091016040019291505056fea264697066735822122042fb2141e411a3cd0ba1c7c6902d39600f2f9f099cbda84bd72bf359421ecb6864736f6c63430008130033