0 txs
0 calls
constructor
constructor()
functions
allowance
viewfunction allowance(address owner, address spender) view returns (uint256)
balanceOf
viewfunction balanceOf(address account) view returns (uint256)
CHILD_CHAIN_ID_BYTES
viewfunction CHILD_CHAIN_ID_BYTES() view returns (bytes)
CHILD_CHAIN_ID
viewfunction CHILD_CHAIN_ID() view returns (uint256)
decimals
viewfunction decimals() view returns (uint8)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
DEPOSITOR_ROLE
viewfunction DEPOSITOR_ROLE() view returns (bytes32)
ERC712_VERSION
viewfunction ERC712_VERSION() view returns (string)
getChainId
purefunction getChainId() pure returns (uint256)
getDomainSeperator
viewfunction getDomainSeperator() view returns (bytes32)
getNonce
viewfunction getNonce(address user) view returns (uint256 nonce)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
getRoleMember
viewfunction getRoleMember(bytes32 role, uint256 index) view returns (address)
getRoleMemberCount
viewfunction getRoleMemberCount(bytes32 role) view returns (uint256)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
name
viewfunction name() view returns (string)
ROOT_CHAIN_ID_BYTES
viewfunction ROOT_CHAIN_ID_BYTES() view returns (bytes)
ROOT_CHAIN_ID
viewfunction ROOT_CHAIN_ID() view returns (uint256)
symbol
viewfunction symbol() view returns (string)
totalSupply
viewfunction totalSupply() view returns (uint256)
approve
nonpayablefunction approve(address spender, uint256 amount) returns (bool)
changeName
nonpayablefunction changeName(string name_)
decreaseAllowance
nonpayablefunction decreaseAllowance(address spender, uint256 subtractedValue) returns (bool)
deposit
nonpayablefunction deposit(address user, bytes depositData)
executeMetaTransaction
payablefunction executeMetaTransaction(address userAddress, bytes functionSignature, bytes32 sigR, bytes32 sigS, uint8 sigV) payable returns (bytes)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
increaseAllowance
nonpayablefunction increaseAllowance(address spender, uint256 addedValue) returns (bool)
initialize
nonpayablefunction initialize(string name_, string symbol_, uint8 decimals_, address childChainManager)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address account)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
transfer
nonpayablefunction transfer(address recipient, uint256 amount) returns (bool)
transferFrom
nonpayablefunction transferFrom(address sender, address recipient, uint256 amount) returns (bool)
withdraw
nonpayablefunction withdraw(uint256 amount)
events
Approval
event Approval(address indexed owner, address indexed spender, uint256 value)
MetaTransactionExecuted
event MetaTransactionExecuted(address userAddress, address relayerAddress, bytes functionSignature)
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
Transfer
event Transfer(address indexed from, address indexed to, uint256 value)
errors
No errors.
creation bytecode
0x60806040526000600860006101000a81548160ff0219169083151502179055503480156200002c57600080fd5b506040518060200160405280600081525060405180602001604052806000815250816003908051906020019062000065929190620000a3565b5080600490805190602001906200007e929190620000a3565b506012600560006101000a81548160ff021916908360ff160217905550505062000152565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620000e657805160ff191683800117855562000117565b8280016001018555821562000117579182015b8281111562000116578251825591602001919060010190620000f9565b5b5090506200012691906200012a565b5090565b6200014f91905b808211156200014b57600081600090555060010162000131565b5090565b90565b6139c780620001626000396000f3fe6080604052600436106101ee5760003560e01c8063395093511161010d578063a217fddf116100a0578063ca15c8731161006f578063ca15c87314610d7d578063cf2c52cb14610dcc578063d547741f14610e72578063dd62ed3e14610ecd578063de7ea79d14610f52576101ee565b8063a217fddf14610c41578063a3b0b5a314610c6c578063a457c2d714610c97578063a9059cbb14610d0a576101ee565b80638acfcaf7116100dc5780638acfcaf714610a8e5780639010d07c14610ab957806391d1485414610b3e57806395d89b4114610bb1576101ee565b806339509351146109055780635353a2d814610978578063626381a0146109fe57806370a0823114610a29576101ee565b806323b872dd116101855780632f2ff15d116101545780632f2ff15d146107f3578063313ce5671461084e5780633408e4701461087f57806336568abe146108aa576101ee565b806323b872dd14610671578063248a9ca3146107045780632d0335ab146107535780632e1a7d4d146107b8576101ee565b80630dd7531a116101c15780630dd7531a146104fb5780630f7e59701461058b57806318160ddd1461061b57806320379ee514610646576101ee565b806306fdde03146101f3578063095ea7b3146102835780630b54817c146102f65780630c53c51c14610386575b600080fd5b3480156101ff57600080fd5b5061020861105a565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561024857808201518184015260208101905061022d565b50505050905090810190601f1680156102755780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561028f57600080fd5b506102dc600480360360408110156102a657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506110fc565b604051808215151515815260200191505060405180910390f35b34801561030257600080fd5b5061030b61111a565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561034b578082015181840152602081019050610330565b50505050905090810190601f1680156103785780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610480600480360360a081101561039c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001906401000000008111156103d957600080fd5b8201836020820111156103eb57600080fd5b8035906020019184600183028401116401000000008311171561040d57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505091929192908035906020019092919080359060200190929190803560ff169060200190929190505050611153565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104c05780820151818401526020810190506104a5565b50505050905090810190601f1680156104ed5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561050757600080fd5b506105106115a9565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610550578082015181840152602081019050610535565b50505050905090810190601f16801561057d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561059757600080fd5b506105a06115e2565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156105e05780820151818401526020810190506105c5565b50505050905090810190601f16801561060d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561062757600080fd5b5061063061161b565b6040518082815260200191505060405180910390f35b34801561065257600080fd5b5061065b611625565b6040518082815260200191505060405180910390f35b34801561067d57600080fd5b506106ea6004803603606081101561069457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061162f565b604051808215151515815260200191505060405180910390f35b34801561071057600080fd5b5061073d6004803603602081101561072757600080fd5b8101908080359060200190929190505050611708565b6040518082815260200191505060405180910390f35b34801561075f57600080fd5b506107a26004803603602081101561077657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611728565b6040518082815260200191505060405180910390f35b3480156107c457600080fd5b506107f1600480360360208110156107db57600080fd5b8101908080359060200190929190505050611771565b005b3480156107ff57600080fd5b5061084c6004803603604081101561081657600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611785565b005b34801561085a57600080fd5b5061086361180f565b604051808260ff1660ff16815260200191505060405180910390f35b34801561088b57600080fd5b50610894611826565b6040518082815260200191505060405180910390f35b3480156108b657600080fd5b50610903600480360360408110156108cd57600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611833565b005b34801561091157600080fd5b5061095e6004803603604081101561092857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506118cc565b604051808215151515815260200191505060405180910390f35b34801561098457600080fd5b506109fc6004803603602081101561099b57600080fd5b81019080803590602001906401000000008111156109b857600080fd5b8201836020820111156109ca57600080fd5b803590602001918460018302840111640100000000831117156109ec57600080fd5b909192939192939050505061197f565b005b348015610a0a57600080fd5b50610a13611b2f565b6040518082815260200191505060405180910390f35b348015610a3557600080fd5b50610a7860048036036020811015610a4c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b34565b6040518082815260200191505060405180910390f35b348015610a9a57600080fd5b50610aa3611b7c565b6040518082815260200191505060405180910390f35b348015610ac557600080fd5b50610afc60048036036040811015610adc57600080fd5b810190808035906020019092919080359060200190929190505050611b81565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610b4a57600080fd5b50610b9760048036036040811015610b6157600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611bb3565b604051808215151515815260200191505060405180910390f35b348015610bbd57600080fd5b50610bc6611be5565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610c06578082015181840152602081019050610beb565b50505050905090810190601f168015610c335780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610c4d57600080fd5b50610c56611c87565b6040518082815260200191505060405180910390f35b348015610c7857600080fd5b50610c81611c8e565b6040518082815260200191505060405180910390f35b348015610ca357600080fd5b50610cf060048036036040811015610cba57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611cc7565b604051808215151515815260200191505060405180910390f35b348015610d1657600080fd5b50610d6360048036036040811015610d2d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d94565b604051808215151515815260200191505060405180910390f35b348015610d8957600080fd5b50610db660048036036020811015610da057600080fd5b8101908080359060200190929190505050611db2565b6040518082815260200191505060405180910390f35b348015610dd857600080fd5b50610e7060048036036040811015610def57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190640100000000811115610e2c57600080fd5b820183602082011115610e3e57600080fd5b80359060200191846001830284011164010000000083111715610e6057600080fd5b9091929391929390505050611dd9565b005b348015610e7e57600080fd5b50610ecb60048036036040811015610e9557600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f1c565b005b348015610ed957600080fd5b50610f3c60048036036040811015610ef057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611fa6565b6040518082815260200191505060405180910390f35b348015610f5e57600080fd5b5061105860048036036080811015610f7557600080fd5b8101908080359060200190640100000000811115610f9257600080fd5b820183602082011115610fa457600080fd5b80359060200191846001830284011164010000000083111715610fc657600080fd5b909192939192939080359060200190640100000000811115610fe757600080fd5b820183602082011115610ff957600080fd5b8035906020019184600183028401116401000000008311171561101b57600080fd5b9091929391929390803560ff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061202d565b005b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110f25780601f106110c7576101008083540402835291602001916110f2565b820191906000526020600020905b8154815290600101906020018083116110d557829003601f168201915b5050505050905090565b60006111106111096122a5565b84846122b4565b6001905092915050565b6040518060400160405280600181526020017f890000000000000000000000000000000000000000000000000000000000000081525081565b606061115d6135e9565b6040518060600160405280600a60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481526020018873ffffffffffffffffffffffffffffffffffffffff1681526020018781525090506111dc87828787876124ab565b611231576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806138b36021913960400191505060405180910390fd5b6112846001600a60008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125e290919063ffffffff16565b600a60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055507f5845892132946850460bff5a0083f71031bc5bf9aadcd40f1de79423eac9b10b873388604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561138f578082015181840152602081019050611374565b50505050905090810190601f1680156113bc5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a1600060603073ffffffffffffffffffffffffffffffffffffffff16888a6040516020018083805190602001908083835b6020831061141e57805182526020820191506020810190506020830392506113fb565b6001836020036101000a0380198251168184511680821785525050505050509050018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1660601b8152601401925050506040516020818303038152906040526040518082805190602001908083835b602083106114bb5780518252602082019150602081019050602083039250611498565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461151d576040519150601f19603f3d011682016040523d82523d6000602084013e611522565b606091505b50915091508161159a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f46756e6374696f6e2063616c6c206e6f74207375636365737366756c0000000081525060200191505060405180910390fd5b80935050505095945050505050565b6040518060400160405280600181526020017f010000000000000000000000000000000000000000000000000000000000000081525081565b6040518060400160405280600181526020017f310000000000000000000000000000000000000000000000000000000000000081525081565b6000600254905090565b6000600954905090565b600061163c84848461266a565b6116fd846116486122a5565b6116f88560405180606001604052806028815260200161388b60289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006116ae6122a5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461292b9092919063ffffffff16565b6122b4565b600190509392505050565b600060066000838152602001908152602001600020600201549050919050565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61178261177c6122a5565b826129eb565b50565b6117ac60066000848152602001908152602001600020600201546117a76122a5565b611bb3565b611801576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602f81526020018061370b602f913960400191505060405180910390fd5b61180b8282612baf565b5050565b6000600560009054906101000a900460ff16905090565b6000804690508091505090565b61183b6122a5565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146118be576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602f815260200180613963602f913960400191505060405180910390fd5b6118c88282612c43565b5050565b60006119756118d96122a5565b8461197085600160006118ea6122a5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125e290919063ffffffff16565b6122b4565b6001905092915050565b6000801b6119948161198f6122a5565b611bb3565b600790611a59576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818154600181600116156101000203166002900481526020019150805460018160011615610100020316600290048015611a4a5780601f10611a1f57610100808354040283529160200191611a4a565b820191906000526020600020905b815481529060010190602001808311611a2d57829003601f168201915b50509250505060405180910390fd5b50611aa783838080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050612cd7565b611b2a83838080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250612cf1565b505050565b608981565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600181565b6000611bab8260066000868152602001908152602001600020600001612da590919063ffffffff16565b905092915050565b6000611bdd8260066000868152602001908152602001600020600001612dbf90919063ffffffff16565b905092915050565b606060048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611c7d5780601f10611c5257610100808354040283529160200191611c7d565b820191906000526020600020905b815481529060010190602001808311611c6057829003601f168201915b5050505050905090565b6000801b81565b60405180807f4445504f5349544f525f524f4c45000000000000000000000000000000000000815250600e019050604051809103902081565b6000611d8a611cd46122a5565b84611d858560405180606001604052806025815260200161393e6025913960016000611cfe6122a5565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461292b9092919063ffffffff16565b6122b4565b6001905092915050565b6000611da8611da16122a5565b848461266a565b6001905092915050565b6000611dd260066000848152602001908152602001600020600001612def565b9050919050565b60405180807f4445504f5349544f525f524f4c45000000000000000000000000000000000000815250600e0190506040518091039020611e2081611e1b6122a5565b611bb3565b600790611ee5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818154600181600116156101000203166002900481526020019150805460018160011615610100020316600290048015611ed65780601f10611eab57610100808354040283529160200191611ed6565b820191906000526020600020905b815481529060010190602001808311611eb957829003601f168201915b50509250505060405180910390fd5b50600083836020811015611ef857600080fd5b81019080803590602001909291905050509050611f158582612e04565b5050505050565b611f436006600084815260200190815260200160002060020154611f3e6122a5565b611bb3565b611f98576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260308152602001806138366030913960400191505060405180910390fd5b611fa28282612c43565b5050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600860009054906101000a900460ff16156120b0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f616c726561647920696e6974656400000000000000000000000000000000000081525060200191505060405180910390fd5b6120fd86868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050612cd7565b61214a84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050612fcb565b61215382612fe5565b6121ac848460405160200180807f4368696c640000000000000000000000000000000000000000000000000000008152506005018383808284378083019250505092505050604051602081830303815290604052613003565b6121c06000801b6121bb6122a5565b6130af565b6121ff60405180807f4445504f5349544f525f524f4c45000000000000000000000000000000000000815250600e0190506040518091039020826130af565b61228286868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152506130bd565b6001600860006101000a81548160ff021916908315150217905550505050505050565b60006122af613169565b905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561233a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061391a6024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156123c0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602281526020018061379f6022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415612532576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806138666025913960400191505060405180910390fd5b60016125456125408761321e565b6132c4565b83868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa15801561259f573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614905095945050505050565b600080828401905083811015612660576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156126f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806138f56025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612776576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260238152602001806136e86023913960400191505060405180910390fd5b61278183838361332b565b6127ec81604051806060016040528060268152602001613810602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461292b9092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061287f816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125e290919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60008383111582906129d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561299d578082015181840152602081019050612982565b50505050905090810190601f1680156129ca5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612a71576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806138d46021913960400191505060405180910390fd5b612a7d8260008361332b565b612ae88160405180606001604052806022815260200161373a602291396000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461292b9092919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612b3f8160025461333090919063ffffffff16565b600281905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b612bd7816006600085815260200190815260200160002060000161337a90919063ffffffff16565b15612c3f57612be46122a5565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b612c6b81600660008581526020019081526020016000206000016133aa90919063ffffffff16565b15612cd357612c786122a5565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b8060039080519060200190612ced929190613620565b5050565b6040518060800160405280604f81526020016137c1604f9139805190602001208280519060200120828051906020012030612d2a611826565b60001b604051602001808681526020018581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200195505050505050604051602081830303815290604052805190602001206009819055505050565b6000612db483600001836133da565b60001c905092915050565b6000612de7836000018373ffffffffffffffffffffffffffffffffffffffff1660001b61345d565b905092915050565b6000612dfd82600001613480565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612ea7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b612eb36000838361332b565b612ec8816002546125e290919063ffffffff16565b600281905550612f1f816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546125e290919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b8060049080519060200190612fe1929190613620565b5050565b80600560006101000a81548160ff021916908360ff16021790555050565b806040516020018082805190602001908083835b6020831061303a5780518252602082019150602081019050602083039250613017565b6001836020036101000a038019825116818451168082178552505050505050905001807f3a20494e53554646494349454e545f5045524d495353494f4e53000000000000815250601a01915050604051602081830303815290604052600790805190602001906130ab929190613620565b5050565b6130b98282612baf565b5050565b600860009054906101000a900460ff1615613140576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f616c726561647920696e6974656400000000000000000000000000000000000081525060200191505060405180910390fd5b61314a8282612cf1565b6001600860006101000a81548160ff0219169083151502179055505050565b60003073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614156132145760606000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509050600080369050905073ffffffffffffffffffffffffffffffffffffffff818301511692505050613218565b3390505b80905090565b600060405180608001604052806043815260200161375c604391398051906020012082600001518360200151846040015180519060200120604051602001808581526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001945050505050604051602081830303815290604052805190602001209050919050565b60006132ce611625565b8260405160200180807f190100000000000000000000000000000000000000000000000000000000000081525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b505050565b600061337283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061292b565b905092915050565b60006133a2836000018373ffffffffffffffffffffffffffffffffffffffff1660001b613491565b905092915050565b60006133d2836000018373ffffffffffffffffffffffffffffffffffffffff1660001b613501565b905092915050565b60008183600001805490501161343b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260228152602001806136c66022913960400191505060405180910390fd5b82600001828154811061344a57fe5b9060005260206000200154905092915050565b600080836001016000848152602001908152602001600020541415905092915050565b600081600001805490509050919050565b600061349d838361345d565b6134f65782600001829080600181540180825580915050600190039060005260206000200160009091909190915055826000018054905083600101600084815260200190815260200160002081905550600190506134fb565b600090505b92915050565b600080836001016000848152602001908152602001600020549050600081146135dd576000600182039050600060018660000180549050039050600086600001828154811061354c57fe5b906000526020600020015490508087600001848154811061356957fe5b90600052602060002001819055506001830187600101600083815260200190815260200160002081905550866000018054806135a157fe5b600190038181906000526020600020016000905590558660010160008781526020019081526020016000206000905560019450505050506135e3565b60009150505b92915050565b604051806060016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061366157805160ff191683800117855561368f565b8280016001018555821561368f579182015b8281111561368e578251825591602001919060010190613673565b5b50905061369c91906136a0565b5090565b6136c291905b808211156136be5760008160009055506001016136a6565b5090565b9056fe456e756d657261626c655365743a20696e646578206f7574206f6620626f756e647345524332303a207472616e7366657220746f20746865207a65726f2061646472657373416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f206772616e7445524332303a206275726e20616d6f756e7420657863656564732062616c616e63654d6574615472616e73616374696f6e2875696e74323536206e6f6e63652c616464726573732066726f6d2c62797465732066756e6374696f6e5369676e61747572652945524332303a20617070726f766520746f20746865207a65726f2061646472657373454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c6164647265737320766572696679696e67436f6e74726163742c627974657333322073616c742945524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365416363657373436f6e74726f6c3a2073656e646572206d75737420626520616e2061646d696e20746f207265766f6b654e61746976654d6574615472616e73616374696f6e3a20494e56414c49445f5349474e455245524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63655369676e657220616e64207369676e617475726520646f206e6f74206d6174636845524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636520726f6c657320666f722073656c66a2646970667358221220e629438ebaeff51bcd470183157df8eee6e14019195c668be49296d8d26fba7e64736f6c63430006060033