1 tx
2 calls
constructor
constructor()
functions
acceptRelayedCall
viewfunction acceptRelayedCall(address, address, bytes, uint256, uint256, uint256, uint256, bytes, uint256) view returns (uint256 doCall, bytes context)
getGSNModule
viewfunction getGSNModule() view returns (address)
getHubAddr
viewfunction getHubAddr() view returns (address)
getImplementation
viewfunction getImplementation() view returns (address)
isOwner
viewfunction isOwner() view returns (bool)
owner
viewfunction owner() view returns (address)
relayHubVersion
viewfunction relayHubVersion() view returns (string)
cloneConstructor
nonpayablefunction cloneConstructor(bytes)
postRelayedCall
nonpayablefunction postRelayedCall(bytes context, bool success, uint256 actualCharge, bytes32 preRetVal)
preRelayedCall
nonpayablefunction preRelayedCall(bytes context) returns (bytes32)
proxy
payablefunction proxy(tuple[] calls) payable returns (bytes[] returnValues)
renounceOwnership
nonpayablefunction renounceOwnership()
setGSNModule
nonpayablefunction setGSNModule(address gsnModule)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
upgradeRelayHub
nonpayablefunction upgradeRelayHub(address newRelayHub)
events
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
RelayHubChanged
event RelayHubChanged(address indexed oldRelayHub, address indexed newRelayHub)
errors
No errors.
creation bytecode
0x6080604052600180546001600160a01b03191673d216153c06e857cd7f72665e0af1d7d82172f4941790553480156200003757600080fd5b5060006200004d6001600160e01b036200010616565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350620000bf620000ae6001600160e01b036200013d16565b6200018e60201b62001bb21760201c565b62000100604051620000d190620002a9565b604051809103906000f080158015620000ee573d6000803e3d6000fd5b50620001b260201b62000a4f1760201c565b62000321565b6001546000906001600160a01b03163314620001245750336200013a565b620001376001600160e01b03620001d616565b90505b90565b600062000137620001586200022360201b62001bd61760201c565b6040516200016960208201620002b7565b6020820181038252601f19601f820116604052506200024760201b62001bfa1760201c565b7f8ba0ed1f62da1d3048614c2c1feb566f041c8467eb00fb8294776a9179dc164355565b7f73c1ac149a67e4e6e228d78c3a8df342639f43de1a2480627ae6fad35761d9af55565b600060606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b031692915050565b7f154d67e25bcc1ea1986fa661b5b80b8facf3a90be6159e155e199e54a74fcb4d90565b600080838351602085016000f590506001600160a01b038116620002a2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002999062000300565b60405180910390fd5b9392505050565b610444806200202b83390190565b610ce1806200246f83390190565b6000620002d460198362000318565b7f437265617465323a204661696c6564206f6e206465706c6f7900000000000000815260200192915050565b602080825281016200031281620002c5565b92915050565b90815260200190565b611cfa80620003316000396000f3fe6080604052600436106100e85760003560e01c80638f32d59b1161008a578063c40b153211610059578063c40b153214610253578063e06e0e2214610273578063f2fde38b14610293578063fb480edb146102b3576100e8565b80638f32d59b146101da5780639e30a590146101fc578063aaf10f421461021c578063ad61ccd514610231576100e8565b806374e861d6116100c657806374e861d61461014857806380274db71461016a57806383947ea0146101975780638da5cb5b146101c5576100e8565b806334ee9791146100ea57806352e831dd14610113578063715018a614610133575b005b6100fd6100f836600461139c565b6102c8565b60405161010a919061195b565b60405180910390f35b34801561011f57600080fd5b506100e861012e3660046113ee565b6103af565b34801561013f57600080fd5b506100e86103b3565b34801561015457600080fd5b5061015d61042a565b60405161010a919061194d565b34801561017657600080fd5b5061018a6101853660046113ee565b61043a565b60405161010a919061198b565b3480156101a357600080fd5b506101b76101b2366004611276565b6104bc565b60405161010a929190611a44565b3480156101d157600080fd5b5061015d61057a565b3480156101e657600080fd5b506101ef610589565b60405161010a919061197d565b34801561020857600080fd5b506100e8610217366004611258565b6105ad565b34801561022857600080fd5b5061015d6105dd565b34801561023d57600080fd5b506102466105ec565b60405161010a9190611999565b34801561025f57600080fd5b506100e861026e366004611258565b61060b565b34801561027f57600080fd5b506100e861028e36600461142f565b610638565b34801561029f57600080fd5b506100e86102ae366004611258565b6106bb565b3480156102bf57600080fd5b5061015d6106e8565b606060006102d46106f2565b905060006102e061071d565b9050600061031482846040516020016102f991906118d7565b60405160208183030381529060405280519060200120610742565b9050610321828285610756565b506040516334ee979160e01b81526001600160a01b038216906334ee979190349061035090899060040161196c565b6000604051808303818588803b15801561036957600080fd5b505af115801561037d573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f191682016040526103a69190810190611368565b95945050505050565b5050565b6103bb610589565b6103e05760405162461bcd60e51b81526004016103d790611a04565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6001546001600160a01b03165b90565b600061044461042a565b6001600160a01b0316336001600160a01b0316146104745760405162461bcd60e51b81526004016103d790611a34565b6104b383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061077a92505050565b90505b92915050565b60006060600060606104cc61085b565b6001600160a01b03166000366040516104e6929190611934565b600060405180830381855afa9150503d8060008114610521576040519150601f19603f3d011682016040523d82523d6000602084013e610526565b606091505b5091509150816105525761053981610880565b60405162461bcd60e51b81526004016103d79190611999565b8080602001905161056691908101906114df565b909e909d509b505050505050505050505050565b6000546001600160a01b031690565b600080546001600160a01b031661059e6106f2565b6001600160a01b031614905090565b6105b5610589565b6105d15760405162461bcd60e51b81526004016103d790611a04565b6105da8161098d565b50565b60006105e761071d565b905090565b6040805180820190915260058152640312e302e360dc1b602082015290565b610613610589565b61062f5760405162461bcd60e51b81526004016103d790611a04565b6105da81610a4f565b61064061042a565b6001600160a01b0316336001600160a01b0316146106705760405162461bcd60e51b81526004016103d790611a34565b6106b485858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250879250869150859050610a73565b5050505050565b6106c3610589565b6106df5760405162461bcd60e51b81526004016103d790611a04565b6105da81610b46565b60006105e761085b565b6001546000906001600160a01b0316331461070e575033610437565b610716610bc7565b9050610437565b7f8ba0ed1f62da1d3048614c2c1feb566f041c8467eb00fb8294776a9179dc16435490565b60006104b38261075185610c14565b610c20565b6000823b80610771576107698584610c2d565b915050610773565b505b9392505050565b600080606061078761085b565b6040516001600160a01b0391909116906380274db760e01b906107ae908790602401611999565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516107ec9190611941565b600060405180830381855af49150503d8060008114610827576040519150601f19603f3d011682016040523d82523d6000602084013e61082c565b606091505b50915091508161083f5761053981610880565b8080602001905161085391908101906113d0565b949350505050565b7f73c1ac149a67e4e6e228d78c3a8df342639f43de1a2480627ae6fad35761d9af5490565b60608151600014156108c6575060408051808201909152601c81527f636170747572656420656d7074792072657665727420627566666572000000006020820152610988565b6308c379a06108e06108db8460006004610cc0565b610ce9565b63ffffffff161461090b576040518060600160405280603f8152602001611c79603f91399050610988565b606061092661092184600463ffffffff610cfe16565b610d22565b905080516000141561096d57505060408051808201909152601d81527f636170747572656420656d70747920726576657274206d6573736167650000006020820152610988565b60608180602001905161098391908101906114ab565b925050505b919050565b6001546001600160a01b039081169082166109ba5760405162461bcd60e51b81526004016103d7906119f4565b806001600160a01b0316826001600160a01b031614156109ec5760405162461bcd60e51b81526004016103d790611a14565b816001600160a01b0316816001600160a01b03167fb9f84b8e65164b14439ae3620df0a4d8786d896996c0282b683f9d8c08f046e860405160405180910390a350600180546001600160a01b0319166001600160a01b0392909216919091179055565b7f73c1ac149a67e4e6e228d78c3a8df342639f43de1a2480627ae6fad35761d9af55565b60006060610a7f61085b565b6040516001600160a01b039190911690637037071160e11b90610aac9089908990899089906024016119aa565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b0319909416939093179092529051610aea9190611941565b600060405180830381855af49150503d8060008114610b25576040519150601f19603f3d011682016040523d82523d6000602084013e610b2a565b606091505b509150915081610b3d5761053981610880565b50505b50505050565b6001600160a01b038116610b6c5760405162461bcd60e51b81526004016103d7906119e4565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b600060606000368080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505050503601516001600160a01b031692915050565b60606104b63083610d7b565b60006104b3838330610ecc565b600080610c638484604051602001610c4591906118d7565b6040516020818303038152906040528051906020012060001c610f24565b9050806001600160a01b0316638129fc1c6040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610ca057600080fd5b505af1158015610cb4573d6000803e3d6000fd5b50929695505050505050565b610cc8610fd4565b610cd28484610f6c565b815260208101919091526040810191909152919050565b80516020820151600091906108538282610f73565b610d06610fd4565b8183511015610d1457825191505b6104b3838384865103610cc0565b60208082015160408051828152601f19601f84011681019093019052606091818015610d55576020820181803883390190505b5083519092506000610d6684610f90565b9050610d73818385610f96565b505050919050565b6040805160008152602081019091526060908190610d9c9060448101611999565b60408051601f1981840381018252928252602080820180516001600160e01b03166352e831dd60e01b17905281518351606382018082526082909201909516850190910190925292508015610df8576020820181803883390190505b507f3d3d606380380380913d393d73bebebebebebebebebebebebebebebebebebebe6020820152600160601b858102602d8301527f5af4602a57600080fd5b602d8060366000396000f3363d3d373d3d3d363d73be6041830152840260608201526e5af43d82803e903d91602b57fd5bf360881b6074820152915060005b8151811015610ec457818181518110610e8b57fe5b602001015160f81c60f81b838260630181518110610ea557fe5b60200101906001600160f81b031916908160001a905350600101610e76565b505092915050565b81516020808401919091206040516000928391610ef9916001600160f81b03199187918a918791016118ec565b60408051808303601f1901815291905280516020909101206001600160a01b03169695505050505050565b60006060610f3184610c14565b80519091508390602083018282826000f5945050506001600160a01b038316610ec45760405162461bcd60e51b81526004016103d790611a24565b0160200190565b6000600180600884021b0380836020038503511691505092915050565b60200190565b5b60208110610fb6578151835260209283019290910190601f1901610f97565b600180600883602003021b0380845116811984511617845250505050565b60405180606001604052806000815260200160008152602001600081525090565b80356104b681611b7f565b600082601f83011261101157600080fd5b815161102461101f82611a8a565b611a64565b81815260209384019390925082018360005b83811015611062578151860161104c8882611181565b8452506020928301929190910190600101611036565b5050505092915050565b600082601f83011261107d57600080fd5b813561108b61101f82611a8a565b81815260209384019390925082018360005b8381101561106257813586016110b388826111d2565b845250602092830192919091019060010161109d565b80356104b681611b93565b80356104b681611b9c565b80516104b681611b9c565b60008083601f8401126110fc57600080fd5b5081356001600160401b0381111561111357600080fd5b60208301915083600182028301111561112b57600080fd5b9250929050565b600082601f83011261114357600080fd5b813561115161101f82611aaa565b9150808252602083016020830185838301111561116d57600080fd5b611178838284611b1c565b50505092915050565b600082601f83011261119257600080fd5b81516111a061101f82611aaa565b915080825260208301602083018583830111156111bc57600080fd5b611178838284611b28565b80356104b681611ba5565b6000608082840312156111e457600080fd5b6111ee6080611a64565b905060006111fc84846111c7565b825250602061120d84848301610ff5565b6020830152506040611221848285016110d4565b60408301525060608201356001600160401b0381111561124057600080fd5b61124c84828501611132565b60608301525092915050565b60006020828403121561126a57600080fd5b60006108538484610ff5565b60008060008060008060008060006101208a8c03121561129557600080fd5b60006112a18c8c610ff5565b99505060206112b28c828d01610ff5565b98505060408a01356001600160401b038111156112ce57600080fd5b6112da8c828d01611132565b97505060606112eb8c828d016110d4565b96505060806112fc8c828d016110d4565b95505060a061130d8c828d016110d4565b94505060c061131e8c828d016110d4565b93505060e08a01356001600160401b0381111561133a57600080fd5b6113468c828d01611132565b9250506101006113588c828d016110d4565b9150509295985092959850929598565b60006020828403121561137a57600080fd5b81516001600160401b0381111561139057600080fd5b61085384828501611000565b6000602082840312156113ae57600080fd5b81356001600160401b038111156113c457600080fd5b6108538482850161106c565b6000602082840312156113e257600080fd5b600061085384846110df565b6000806020838503121561140157600080fd5b82356001600160401b0381111561141757600080fd5b611423858286016110ea565b92509250509250929050565b60008060008060006080868803121561144757600080fd5b85356001600160401b0381111561145d57600080fd5b611469888289016110ea565b9550955050602061147c888289016110c9565b935050604061148d888289016110d4565b925050606061149e888289016110d4565b9150509295509295909350565b6000602082840312156114bd57600080fd5b81516001600160401b038111156114d357600080fd5b61085384828501611181565b600080604083850312156114f257600080fd5b60006114fe85856110df565b92505060208301516001600160401b0381111561151a57600080fd5b61152685828601611181565b9150509250929050565b60006104b38383611685565b60006104b38383611885565b61155181611ade565b82525050565b61155161156382611ade565b611b54565b600061157382611ad1565b61157d8185611ad5565b93508360208202850161158f85610f90565b8060005b858110156115c957848403895281516115ac8582611530565b94506115b783610f90565b60209a909a0199925050600101611593565b5091979650505050505050565b60006115e182611ad1565b6115eb8185611ad5565b9350836020820285016115fd85610f90565b8060005b858110156115c9578484038952815161161a858261153c565b945061162583610f90565b60209a909a0199925050600101611601565b61155181611ae9565b61155161164c82611aee565b610437565b61155181610437565b61155161164c82610437565b60006116728385610988565b935061167f838584611b1c565b50500190565b600061169082611ad1565b61169a8185611ad5565b93506116aa818560208601611b28565b6116b381611b65565b9093019392505050565b60006116c882611ad1565b6116d28185610988565b93506116e2818560208601611b28565b9290920192915050565b61155181611b11565b6000611702602683611ad5565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206181526564647265737360d01b602082015260400192915050565b600061174a602e83611ad5565b7f47534e526563697069656e743a206e65772052656c617948756220697320746881526d65207a65726f206164647265737360901b602082015260400192915050565b600061179a602083611ad5565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572815260200192915050565b60006117d3602d83611ad5565b7f47534e526563697069656e743a206e65772052656c617948756220697320746881526c652063757272656e74206f6e6560981b602082015260400192915050565b6000611822600e83611ad5565b6d18dc99585d194c8819985a5b195960921b815260200192915050565b600061184c602483611ad5565b7f47534e526563697069656e743a2063616c6c6572206973206e6f742052656c618152633ca43ab160e11b602082015260400192915050565b8051600090608084019061189985826116ec565b5060208301516118ac6020860182611548565b5060408301516118bf6040860182611651565b50606083015184820360608601526103a68282611685565b60006118e38284611557565b50601401919050565b60006118f88287611640565b6001820191506119088286611557565b601482019150611918828561165a565b602082019150611928828461165a565b50602001949350505050565b6000610853828486611666565b600061077382846116bd565b602081016104b68284611548565b602080825281016104b38184611568565b602080825281016104b381846115d6565b602081016104b68284611637565b602081016104b68284611651565b602080825281016104b38184611685565b608080825281016119bb8187611685565b90506119ca6020830186611637565b6119d76040830185611651565b6103a66060830184611651565b602080825281016104b6816116f5565b602080825281016104b68161173d565b602080825281016104b68161178d565b602080825281016104b6816117c6565b602080825281016104b681611815565b602080825281016104b68161183f565b60408101611a528285611651565b81810360208301526108538184611685565b6040518181016001600160401b0381118282101715611a8257600080fd5b604052919050565b60006001600160401b03821115611aa057600080fd5b5060209081020190565b60006001600160401b03821115611ac057600080fd5b506020601f91909101601f19160190565b5190565b90815260200190565b60006104b682611b05565b151590565b6001600160f81b03191690565b8061098881611b75565b6001600160a01b031690565b60006104b682611afb565b82818337506000910152565b60005b83811015611b43578181015183820152602001611b2b565b83811115610b405750506000910152565b60006104b68260006104b682611b6f565b601f01601f191690565b60601b90565b600381106105da57fe5b611b8881611ade565b81146105da57600080fd5b611b8881611ae9565b611b8881610437565b600381106105da57600080fd5b7f8ba0ed1f62da1d3048614c2c1feb566f041c8467eb00fb8294776a9179dc164355565b7f154d67e25bcc1ea1986fa661b5b80b8facf3a90be6159e155e199e54a74fcb4d90565b600080838351602085016000f590506001600160a01b0381166104b35760405162461bcd60e51b81526004016103d790611c68565b6000611c3c601983611ad5565b7f437265617465323a204661696c6564206f6e206465706c6f7900000000000000815260200192915050565b602080825281016104b681611c2f56fe6361707475726564206120726576657274206572726f722c2062757420697420646f65736e277420636f6e666f726d20746f20746865207374616e64617264a365627a7a7230582083922b50ee58860e2a905e536af5c1bf932e048ff49defc518949b99793eac316c6578706572696d656e74616cf564736f6c634300050a0040608060405234801561001057600080fd5b50610424806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806380274db71461004657806383947ea0146100fc578063e06e0e22146102d8575b600080fd5b6100ea6004803603602081101561005c57600080fd5b810190602081018135600160201b81111561007657600080fd5b82018360208201111561008857600080fd5b803590602001918460018302840111600160201b831117156100a957600080fd5b91908080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092955061038b945050505050565b60408051918252519081900360200190f35b610259600480360361012081101561011357600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b81111561014657600080fd5b82018360208201111561015857600080fd5b803590602001918460018302840111600160201b8311171561017957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929584359560208601359560408101359550606081013594509192509060a081019060800135600160201b8111156101e357600080fd5b8201836020820111156101f557600080fd5b803590602001918460018302840111600160201b8311171561021657600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295505091359250610391915050565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561029c578181015183820152602001610284565b50505050905090810190601f1680156102c95780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b610389600480360360808110156102ee57600080fd5b810190602081018135600160201b81111561030857600080fd5b82018360208201111561031a57600080fd5b803590602001918460018302840111600160201b8311171561033b57600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550505050803515159150602081013590604001356103d8565b005b50600090565b6000606060006103a08a6103de565b90506001600160e01b031981166334ee979160e01b14156103c457600092506103c9565b600192505b50995099975050505050505050565b50505050565b602001516001600160e01b0319169056fea265627a7a72305820dc170f13de77d15da2cccca78861c28b37b1d6a7e0991f90d7b380d262f2f14f64736f6c634300050a0032608060405234801561001057600080fd5b50610cc1806100206000396000f3fe60806040526004361061003f5760003560e01c806334ee9791146100445780638129fc1c1461006d578063bc197c8114610084578063f23a6e61146100b1575b600080fd5b6100576100523660046108fb565b6100d1565b6040516100649190610ad8565b60405180910390f35b34801561007957600080fd5b506100826101c2565b005b34801561009057600080fd5b506100a461009f3660046107e7565b6101fd565b6040516100649190610ae9565b3480156100bd57600080fd5b506100a46100cc3660046108a4565b61020e565b6060336100dc61021f565b6001600160a01b03161461010b5760405162461bcd60e51b815260040161010290610b08565b60405180910390fd5b815160405190808252806020026020018201604052801561014057816020015b606081526020019060019003908161012b5790505b50905060005b82518110156101bc576000606061016f85848151811061016257fe5b6020026020010151610244565b915091508161019a5761018181610350565b60405162461bcd60e51b81526004016101029190610af7565b808484815181106101a757fe5b60209081029190910101525050600101610146565b50919050565b60006101cc61021f565b6001600160a01b0316146101f25760405162461bcd60e51b815260040161010290610b18565b6101fb3361045d565b565b63bc197c8160e01b95945050505050565b63f23a6e6160e01b95945050505050565b7f734a2a5caf82146a5ddd5263d9af379f9f72724959f0567ddc9df2c40cf2cc205490565b6000606060028351600281111561025757fe5b14156102c85782602001516001600160a01b0316836060015160405161027d9190610ac5565b600060405180830381855af49150503d80600081146102b8576040519150601f19603f3d011682016040523d82523d6000602084013e6102bd565b606091505b50909250905061034b565b6001835160028111156102d757fe5b141561034b5782602001516001600160a01b0316836040015184606001516040516103029190610ac5565b60006040518083038185875af1925050503d806000811461033f576040519150601f19603f3d011682016040523d82523d6000602084013e610344565b606091505b5090925090505b915091565b6060815160001415610396575060408051808201909152601c81527f636170747572656420656d7074792072657665727420627566666572000000006020820152610458565b6308c379a06103b06103ab8460006004610481565b6104aa565b63ffffffff16146103db576040518060600160405280603f8152602001610c40603f91399050610458565b60606103f66103f184600463ffffffff6104bf16565b6104ec565b905080516000141561043d57505060408051808201909152601d81527f636170747572656420656d70747920726576657274206d6573736167650000006020820152610458565b6060818060200190516104539190810190610938565b925050505b919050565b7f734a2a5caf82146a5ddd5263d9af379f9f72724959f0567ddc9df2c40cf2cc2055565b6104896105ad565b6104938484610545565b815260208101919091526040810191909152919050565b8051602082015160009190610453828261054c565b6104c76105ad565b81835110156104d557825191505b6104e3838384865103610481565b90505b92915050565b60208082015160408051828152601f19601f8401168101909301905260609181801561051f576020820181803883390190505b508351909250600061053084610569565b905061053d81838561056f565b505050919050565b0160200190565b6000600180600884021b0380836020038503511691505092915050565b60200190565b5b6020811061058f578151835260209283019290910190601f1901610570565b600180600883602003021b0380845116811984511617845250505050565b60405180606001604052806000815260200160008152602001600081525090565b80356104e681610c12565b600082601f8301126105ea57600080fd5b81356105fd6105f882610b4f565b610b28565b81815260209384019390925082018360005b8381101561063b57813586016106258882610755565b845250602092830192919091019060010161060f565b5050505092915050565b600082601f83011261065657600080fd5b81356106646105f882610b4f565b9150818183526020840193506020810190508385602084028201111561068957600080fd5b60005b8381101561063b578161069f88826107dc565b845250602092830192919091019060010161068c565b600082601f8301126106c657600080fd5b81356106d46105f882610b70565b915080825260208301602083018583830111156106f057600080fd5b6106fb838284610bcc565b50505092915050565b80356104e681610c29565b600082601f83011261072057600080fd5b815161072e6105f882610b70565b9150808252602083016020830185838301111561074a57600080fd5b6106fb838284610bd8565b60006080828403121561076757600080fd5b6107716080610b28565b9050600061077f8484610704565b8252506020610790848483016105ce565b60208301525060406107a4848285016107dc565b604083015250606082013567ffffffffffffffff8111156107c457600080fd5b6107d0848285016106b5565b60608301525092915050565b80356104e681610c36565b600080600080600060a086880312156107ff57600080fd5b600061080b88886105ce565b955050602061081c888289016105ce565b945050604086013567ffffffffffffffff81111561083957600080fd5b61084588828901610645565b935050606086013567ffffffffffffffff81111561086257600080fd5b61086e88828901610645565b925050608086013567ffffffffffffffff81111561088b57600080fd5b610897888289016106b5565b9150509295509295909350565b600080600080600060a086880312156108bc57600080fd5b60006108c888886105ce565b95505060206108d9888289016105ce565b94505060406108ea888289016107dc565b935050606061086e888289016107dc565b60006020828403121561090d57600080fd5b813567ffffffffffffffff81111561092457600080fd5b610930848285016105d9565b949350505050565b60006020828403121561094a57600080fd5b815167ffffffffffffffff81111561096157600080fd5b6109308482850161070f565b60006104e383836109f6565b600061098482610b98565b61098e8185610b9c565b9350836020820285016109a085610569565b8060005b858110156109da57848403895281516109bd858261096d565b94506109c883610569565b60209a909a01999250506001016109a4565b5091979650505050505050565b6109f081610bb0565b82525050565b6000610a0182610b98565b610a0b8185610b9c565b9350610a1b818560208601610bd8565b610a2481610c08565b9093019392505050565b6000610a3982610b98565b610a438185610458565b9350610a53818560208601610bd8565b9290920192915050565b6000610a6a601783610b9c565b7f6d7573742062652063616c6c6564206265206f776e6572000000000000000000815260200192915050565b6000610aa3601383610b9c565b72185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b815260200192915050565b6000610ad18284610a2e565b9392505050565b602080825281016104e38184610979565b602081016104e682846109e7565b602080825281016104e381846109f6565b602080825281016104e681610a5d565b602080825281016104e681610a96565b60405181810167ffffffffffffffff81118282101715610b4757600080fd5b604052919050565b600067ffffffffffffffff821115610b6657600080fd5b5060209081020190565b600067ffffffffffffffff821115610b8757600080fd5b506020601f91909101601f19160190565b5190565b90815260200190565b60006104e682610bbd565b6001600160e01b03191690565b6001600160a01b031690565b90565b82818337506000910152565b60005b83811015610bf3578181015183820152602001610bdb565b83811115610c02576000848401525b50505050565b601f01601f191690565b610c1b81610ba5565b8114610c2657600080fd5b50565b60038110610c2657600080fd5b610c1b81610bc956fe6361707475726564206120726576657274206572726f722c2062757420697420646f65736e277420636f6e666f726d20746f20746865207374616e64617264a365627a7a72305820486362e957821ea03d03a4d93af0b4af06510e1abcf0ade1607753e8292a5bee6c6578706572696d656e74616cf564736f6c634300050a0040