0 txs
94 calls
constructor
constructor()
functions
approvedHashes
viewfunction approvedHashes(address, bytes32) view returns (uint256)
checkNSignatures
viewfunction checkNSignatures(bytes32 dataHash, bytes data, bytes signatures, uint256 requiredSignatures) view
checkSignatures
viewfunction checkSignatures(bytes32 dataHash, bytes data, bytes signatures) view
domainSeparator
viewfunction domainSeparator() view returns (bytes32)
encodeTransactionData
viewfunction encodeTransactionData(address to, uint256 value, bytes data, uint8 operation, uint256 safeTxGas, uint256 baseGas, uint256 gasPrice, address gasToken, address refundReceiver, uint256 _nonce) view returns (bytes)
getChainId
viewfunction getChainId() view returns (uint256)
getModulesPaginated
viewfunction getModulesPaginated(address start, uint256 pageSize) view returns (address[] array, address next)
getOwners
viewfunction getOwners() view returns (address[])
getStorageAt
viewfunction getStorageAt(uint256 offset, uint256 length) view returns (bytes)
getThreshold
viewfunction getThreshold() view returns (uint256)
getTransactionHash
viewfunction getTransactionHash(address to, uint256 value, bytes data, uint8 operation, uint256 safeTxGas, uint256 baseGas, uint256 gasPrice, address gasToken, address refundReceiver, uint256 _nonce) view returns (bytes32)
isModuleEnabled
viewfunction isModuleEnabled(address module) view returns (bool)
isOwner
viewfunction isOwner(address owner) view returns (bool)
nonce
viewfunction nonce() view returns (uint256)
signedMessages
viewfunction signedMessages(bytes32) view returns (uint256)
VERSION
viewfunction VERSION() view returns (string)
addOwnerWithThreshold
nonpayablefunction addOwnerWithThreshold(address owner, uint256 _threshold)
approveHash
nonpayablefunction approveHash(bytes32 hashToApprove)
changeThreshold
nonpayablefunction changeThreshold(uint256 _threshold)
disableModule
nonpayablefunction disableModule(address prevModule, address module)
enableModule
nonpayablefunction enableModule(address module)
execTransaction
payablefunction execTransaction(address to, uint256 value, bytes data, uint8 operation, uint256 safeTxGas, uint256 baseGas, uint256 gasPrice, address gasToken, address refundReceiver, bytes signatures) payable returns (bool success)
execTransactionFromModule
nonpayablefunction execTransactionFromModule(address to, uint256 value, bytes data, uint8 operation) returns (bool success)
execTransactionFromModuleReturnData
nonpayablefunction execTransactionFromModuleReturnData(address to, uint256 value, bytes data, uint8 operation) returns (bool success, bytes returnData)
removeOwner
nonpayablefunction removeOwner(address prevOwner, address owner, uint256 _threshold)
requiredTxGas
nonpayablefunction requiredTxGas(address to, uint256 value, bytes data, uint8 operation) returns (uint256)
setFallbackHandler
nonpayablefunction setFallbackHandler(address handler)
setGuard
nonpayablefunction setGuard(address guard)
setup
nonpayablefunction setup(address[] _owners, uint256 _threshold, address to, bytes data, address fallbackHandler, address paymentToken, uint256 payment, address paymentReceiver)
simulateAndRevert
nonpayablefunction simulateAndRevert(address targetContract, bytes calldataPayload)
swapOwner
nonpayablefunction swapOwner(address prevOwner, address oldOwner, address newOwner)
events
AddedOwner
event AddedOwner(address owner)
ApproveHash
event ApproveHash(bytes32 indexed approvedHash, address indexed owner)
ChangedFallbackHandler
event ChangedFallbackHandler(address handler)
ChangedGuard
event ChangedGuard(address guard)
ChangedThreshold
event ChangedThreshold(uint256 threshold)
DisabledModule
event DisabledModule(address module)
EnabledModule
event EnabledModule(address module)
ExecutionFailure
event ExecutionFailure(bytes32 txHash, uint256 payment)
ExecutionFromModuleFailure
event ExecutionFromModuleFailure(address indexed module)
ExecutionFromModuleSuccess
event ExecutionFromModuleSuccess(address indexed module)
ExecutionSuccess
event ExecutionSuccess(bytes32 txHash, uint256 payment)
RemovedOwner
event RemovedOwner(address owner)
SafeReceived
event SafeReceived(address indexed sender, uint256 value)
SafeSetup
event SafeSetup(address indexed initiator, address[] owners, uint256 threshold, address initializer, address fallbackHandler)
SignMsg
event SignMsg(bytes32 indexed msgHash)
errors
No errors.
creation bytecode
0x608060405234801561001057600080fd5b50600160045561300b806100256000396000f3fe6080604052600436106101dc5760003560e01c8063affed0e011610102578063e19a9dd911610095578063f08a032311610064578063f08a032314610620578063f698da2514610640578063f8dc5dd914610655578063ffa1ad741461067557610218565b8063e19a9dd9146105ab578063e318b52b146105cb578063e75235b8146105eb578063e86637db1461060057610218565b8063cc2f8452116100d1578063cc2f84521461051d578063d4d9bdcd1461054b578063d8d11f781461056b578063e009cfde1461058b57610218565b8063affed0e0146104a7578063b4faba09146104bd578063b63e800d146104dd578063c4ca3a9c146104fd57610218565b80635624b25b1161017a5780636a761202116101495780636a7612021461041a5780637d8329741461042d578063934f3a1114610465578063a0e67e2b1461048557610218565b80635624b25b146103805780635ae6bd37146103ad578063610b5925146103da578063694e80c3146103fa57610218565b80632f54bf6e116101b65780632f54bf6e146102f55780633408e47014610315578063468721a7146103325780635229073f1461035257610218565b80630d582f131461027e57806312fb68e0146102a05780632d9ad53d146102c057610218565b366102185760405134815233907f3d0ce9bfc3ed7d6862dbb28b2dea94561fe714a1b4d019aa8af39730d1ad7c3d9060200160405180910390a2005b34801561022457600080fd5b507f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d580548061024f57005b36600080373360601b365260008060143601600080855af190503d6000803e80610278573d6000fd5b503d6000f35b34801561028a57600080fd5b5061029e6102993660046124a2565b6106a6565b005b3480156102ac57600080fd5b5061029e6102bb366004612570565b610806565b3480156102cc57600080fd5b506102e06102db3660046125e4565b610c71565b60405190151581526020015b60405180910390f35b34801561030157600080fd5b506102e06103103660046125e4565b610cac565b34801561032157600080fd5b50465b6040519081526020016102ec565b34801561033e57600080fd5b506102e061034d366004612610565b610ce4565b34801561035e57600080fd5b5061037261036d366004612610565b610dbb565b6040516102ec9291906126bf565b34801561038c57600080fd5b506103a061039b3660046126da565b610df1565b6040516102ec91906126fc565b3480156103b957600080fd5b506103246103c836600461270f565b60076020526000908152604090205481565b3480156103e657600080fd5b5061029e6103f53660046125e4565b610e76565b34801561040657600080fd5b5061029e61041536600461270f565b610fb8565b6102e0610428366004612770565b611050565b34801561043957600080fd5b506103246104483660046124a2565b600860209081526000928352604080842090915290825290205481565b34801561047157600080fd5b5061029e610480366004612848565b611399565b34801561049157600080fd5b5061049a6113e3565b6040516102ec91906128f8565b3480156104b357600080fd5b5061032460055481565b3480156104c957600080fd5b5061029e6104d836600461290b565b6114d3565b3480156104e957600080fd5b5061029e6104f836600461295a565b6114f6565b34801561050957600080fd5b50610324610518366004612a4e565b611617565b34801561052957600080fd5b5061053d6105383660046124a2565b6116b1565b6040516102ec929190612abe565b34801561055757600080fd5b5061029e61056636600461270f565b6117aa565b34801561057757600080fd5b50610324610586366004612ae8565b61183f565b34801561059757600080fd5b5061029e6105a6366004612ba8565b61186c565b3480156105b757600080fd5b5061029e6105c63660046125e4565b61199b565b3480156105d757600080fd5b5061029e6105e6366004612be1565b611a00565b3480156105f757600080fd5b50600454610324565b34801561060c57600080fd5b506103a061061b366004612ae8565b611bef565b34801561062c57600080fd5b5061029e61063b3660046125e4565b611cc8565b34801561064c57600080fd5b50610324611d31565b34801561066157600080fd5b5061029e610670366004612c2c565b611d88565b34801561068157600080fd5b506103a0604051806040016040528060058152602001640312e332e360dc1b81525081565b6106ae611efb565b6001600160a01b038216158015906106d057506001600160a01b038216600114155b80156106e557506001600160a01b0382163014155b61070a5760405162461bcd60e51b815260040161070190612c6d565b60405180910390fd5b6001600160a01b0382811660009081526002602052604090205416156107425760405162461bcd60e51b815260040161070190612c8c565b60026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e080546001600160a01b038481166000818152604081208054939094166001600160a01b0319938416179093556001835283549091161790915560038054916107af83612cc1565b90915550506040516001600160a01b03831681527f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea269060200160405180910390a180600454146108025761080281610fb8565b5050565b610811816041611f34565b825110156108495760405162461bcd60e51b8152602060048201526005602482015264047533032360dc1b6044820152606401610701565b6000808060008060005b86811015610c65576041818102890160208101516040820151919092015160ff16955090935091506000849003610a24579193508391610894876041611f34565b8210156108cb5760405162461bcd60e51b8152602060048201526005602482015264475330323160d81b6044820152606401610701565b87516108d8836020611f70565b111561090e5760405162461bcd60e51b815260206004820152600560248201526423a998191960d91b6044820152606401610701565b60208289018101518951909161093190839061092b908790611f70565b90611f70565b11156109675760405162461bcd60e51b8152602060048201526005602482015264475330323360d81b6044820152606401610701565b6040516320c13b0b60e01b8082528a8501602001916001600160a01b038916906320c13b0b9061099d908f908690600401612cda565b602060405180830381865afa1580156109ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109de9190612cff565b6001600160e01b03191614610a1d5760405162461bcd60e51b815260206004820152600560248201526411d4cc0c8d60da1b6044820152606401610701565b5050610bcb565b8360ff16600103610aa6579193508391336001600160a01b0384161480610a6d57506001600160a01b03851660009081526008602090815260408083208d845290915290205415155b610aa15760405162461bcd60e51b8152602060048201526005602482015264475330323560d81b6044820152606401610701565b610bcb565b601e8460ff161115610b6b576040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018b9052600190605c0160405160208183030381529060405280519060200120600486610b0b9190612d29565b6040805160008152602081018083529390935260ff90911690820152606081018590526080810184905260a0016020604051602081039080840390855afa158015610b5a573d6000803e3d6000fd5b505050602060405103519450610bcb565b6040805160008152602081018083528c905260ff861691810191909152606081018490526080810183905260019060a0016020604051602081039080840390855afa158015610bbe573d6000803e3d6000fd5b5050506020604051035194505b856001600160a01b0316856001600160a01b0316118015610c0557506001600160a01b038581166000908152600260205260409020541615155b8015610c1b57506001600160a01b038516600114155b610c4f5760405162461bcd60e51b815260206004820152600560248201526423a998191b60d91b6044820152606401610701565b8495508080610c5d90612cc1565b915050610853565b50505050505050505050565b600060016001600160a01b03831614801590610ca657506001600160a01b038281166000908152600160205260409020541615155b92915050565b60006001600160a01b038216600114801590610ca65750506001600160a01b0390811660009081526002602052604090205416151590565b600033600114801590610d0e5750336000908152600160205260409020546001600160a01b031615155b610d425760405162461bcd60e51b815260206004820152600560248201526411d4cc4c0d60da1b6044820152606401610701565b610d4f858585855a611f8c565b90508015610d875760405133907f6895c13664aa4f67288b25d7a21d7aaa34916e355fb9b6fae0a139a9085becb890600090a2610db3565b60405133907facd2c8702804128fdb0db2bb49f6d127dd0181c13fd45dbfe16de0930e2bd37590600090a25b949350505050565b60006060610dcb86868686610ce4565b915060405160203d0181016040523d81523d6000602083013e8091505094509492505050565b60606000610e00836020612d42565b6001600160401b03811115610e1757610e176124ce565b6040519080825280601f01601f191660200182016040528015610e41576020820181803683370190505b50905060005b83811015610e6e578481015460208083028401015280610e6681612cc1565b915050610e47565b509392505050565b610e7e611efb565b6001600160a01b03811615801590610ea057506001600160a01b038116600114155b610ed45760405162461bcd60e51b8152602060048201526005602482015264475331303160d81b6044820152606401610701565b6001600160a01b038181166000908152600160205260409020541615610f245760405162461bcd60e51b815260206004820152600560248201526423a998981960d91b6044820152606401610701565b600160208181527fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f80546001600160a01b03858116600081815260408082208054949095166001600160a01b031994851617909455959095528254168417909155519182527fecdf3a3effea5783a3c4c2140e677577666428d44ed9d474a0b3a4c9943f844091015b60405180910390a150565b610fc0611efb565b600354811115610fe25760405162461bcd60e51b815260040161070190612d59565b600181101561101b5760405162461bcd60e51b815260206004820152600560248201526423a999181960d91b6044820152606401610701565b60048190556040518181527f610f7ff2b304ae8903c3de74c60c6ab1f7d6226b3f52c5161905bb5ad4039c9390602001610fad565b600080600061106a8e8e8e8e8e8e8e8e8e8e600554611bef565b60058054919250600061107c83612cc1565b9091555050805160208201209150611095828286611399565b5060006110c07f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbda4f558c93c34c85490565b90506001600160a01b0381161561114657806001600160a01b03166375f0bb528f8f8f8f8f8f8f8f8f8f8f336040518d63ffffffff1660e01b81526004016111139c9b9a99989796959493929190612db0565b600060405180830381600087803b15801561112d57600080fd5b505af1158015611141573d6000803e3d6000fd5b505050505b6111726111558a6109c4612e75565b603f6111628c6040612d42565b61116c9190612e88565b90611fd3565b61117e906101f4612e75565b5a10156111b55760405162461bcd60e51b8152602060048201526005602482015264047533031360dc1b6044820152606401610701565b60005a90506112268f8f8f8f8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508e8c600014611213578e611f8c565b6109c45a6112219190612eaa565b611f8c565b93506112335a8290611fea565b9050838061124057508915155b8061124a57508715155b61127e5760405162461bcd60e51b8152602060048201526005602482015264475330313360d81b6044820152606401610701565b6000881561129657611293828b8b8b8b612005565b90505b84156112da5760408051858152602081018390527f442e715f626346e8c54381002da614f62bee8d27386535b2521ec8540898556e910160405180910390a1611314565b60408051858152602081018390527f23428b18acfb3ea64b08dc0c1d296ea9c09702c09083ca5272e64d115b687d23910160405180910390a15b50506001600160a01b0381161561138857604051631264e26d60e31b81526004810183905283151560248201526001600160a01b03821690639327136890604401600060405180830381600087803b15801561136f57600080fd5b505af1158015611383573d6000803e3d6000fd5b505050505b50509b9a5050505050505050505050565b600454806113d15760405162461bcd60e51b8152602060048201526005602482015264475330303160d81b6044820152606401610701565b6113dd84848484610806565b50505050565b606060006003546001600160401b03811115611401576114016124ce565b60405190808252806020026020018201604052801561142a578160200160208202803683370190505b506001600090815260026020527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e054919250906001600160a01b03165b6001600160a01b0381166001146114cb578083838151811061148b5761148b612ebd565b6001600160a01b039283166020918202929092018101919091529181166000908152600290925260409091205416816114c381612cc1565b925050611467565b509092915050565b600080825160208401855af480600052503d6020523d600060403e60403d016000fd5b6115348a8a808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152508c925061210b915050565b6001600160a01b0384161561156b5761156b847f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d555565b6115ab8787878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506122f192505050565b81156115c2576115c082600060018685612005565b505b336001600160a01b03167f141df868a6331af528e38c83b7aa03edc19be66e37ae67f9285bf4f8e3c6a1a88b8b8b8b89604051611603959493929190612ed3565b60405180910390a250505050505050505050565b6000805a9050611660878787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525089925050505a611f8c565b61166957600080fd5b60005a6116769083612eaa565b90508060405160200161168b91815260200190565b60408051601f198184030181529082905262461bcd60e51b8252610701916004016126fc565b60606000826001600160401b038111156116cd576116cd6124ce565b6040519080825280602002602001820160405280156116f6578160200160208202803683370190505b506001600160a01b0380861660009081526001602052604081205492945091165b6001600160a01b0381161580159061173957506001600160a01b038116600114155b801561174457508482105b1561179c578084838151811061175c5761175c612ebd565b6001600160a01b0392831660209182029290920181019190915291811660009081526001909252604090912054168161179481612cc1565b925050611717565b908352919491935090915050565b336000908152600260205260409020546001600160a01b03166117f75760405162461bcd60e51b8152602060048201526005602482015264047533033360dc1b6044820152606401610701565b336000818152600860209081526040808320858452909152808220600190555183917ff2a0eb156472d1440255b0d7c1e19cc07115d1051fe605b0dce69acfec884d9c91a350565b60006118548c8c8c8c8c8c8c8c8c8c8c611bef565b8051906020012090509b9a5050505050505050505050565b611874611efb565b6001600160a01b0381161580159061189657506001600160a01b038116600114155b6118ca5760405162461bcd60e51b8152602060048201526005602482015264475331303160d81b6044820152606401610701565b6001600160a01b0382811660009081526001602052604090205481169082161461191e5760405162461bcd60e51b8152602060048201526005602482015264475331303360d81b6044820152606401610701565b6001600160a01b038181166000818152600160209081526040808320805488871685528285208054919097166001600160a01b03199182161790965592849052825490941690915591519081527faab4fa2b463f581b2b32cb3b7e3b704b9ce37cc209b5fb4d77e593ace405427691015b60405180910390a15050565b6119a3611efb565b7f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbda4f558c93c34c88181556040516001600160a01b03831681527f1151116914515bc0891ff9047a6cb32cf902546f83066499bcf8ba33d2353fa29060200161198f565b611a08611efb565b6001600160a01b03811615801590611a2a57506001600160a01b038116600114155b8015611a3f57506001600160a01b0381163014155b611a5b5760405162461bcd60e51b815260040161070190612c6d565b6001600160a01b038181166000908152600260205260409020541615611a935760405162461bcd60e51b815260040161070190612c8c565b6001600160a01b03821615801590611ab557506001600160a01b038216600114155b611ad15760405162461bcd60e51b815260040161070190612c6d565b6001600160a01b03838116600090815260026020526040902054811690831614611b255760405162461bcd60e51b8152602060048201526005602482015264475332303560d81b6044820152606401610701565b6001600160a01b038281166000818152600260209081526040808320805487871680865283862080549289166001600160a01b0319938416179055968a1685528285208054821690971790965592849052825490941690915591519081527ff8d49fc529812e9a7c5c50e69c20f0dccc0db8fa95c98bc58cc9a4f1c1299eaf910160405180910390a16040516001600160a01b03821681527f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea269060200160405180910390a1505050565b606060007fbb8310d486368db6bd6f849402fdd73ad53d316b5a4b2644ad6efe0f941286d860001b8d8d8d8d604051611c29929190612f3f565b604051908190038120611c4f949392918e908e908e908e908e908e908e90602001612f4f565b60408051601f1981840301815291905280516020909101209050601960f81b600160f81b611c7b611d31565b6040516001600160f81b031993841660208201529290911660218301526022820152604281018290526062016040516020818303038152906040529150509b9a5050505050505050505050565b611cd0611efb565b611cf8817f6c9a6c4a39284e37ed1cf53d337577d14212a4870fb976a4366c693b939918d555565b6040516001600160a01b03821681527f5ac6c46c93c8d0e53714ba3b53db3e7c046da994313d7ed0d192028bc7c228b090602001610fad565b60007f47e79534a245952e8b16893a336b85a3d9ea9fa8c573f3d803afb92a794692184660408051602081019390935282015230606082015260800160405160208183030381529060405280519060200120905090565b611d90611efb565b806001600354611da09190612eaa565b1015611dbe5760405162461bcd60e51b815260040161070190612d59565b6001600160a01b03821615801590611de057506001600160a01b038216600114155b611dfc5760405162461bcd60e51b815260040161070190612c6d565b6001600160a01b03838116600090815260026020526040902054811690831614611e505760405162461bcd60e51b8152602060048201526005602482015264475332303560d81b6044820152606401610701565b6001600160a01b03828116600081815260026020526040808220805488861684529183208054929095166001600160a01b03199283161790945591815282549091169091556003805491611ea383612fbe565b90915550506040516001600160a01b03831681527ff8d49fc529812e9a7c5c50e69c20f0dccc0db8fa95c98bc58cc9a4f1c1299eaf9060200160405180910390a18060045414611ef657611ef681610fb8565b505050565b333014611f325760405162461bcd60e51b8152602060048201526005602482015264475330333160d81b6044820152606401610701565b565b600082600003611f4657506000610ca6565b6000611f528385612d42565b905082611f5f8583612e88565b14611f6957600080fd5b9392505050565b600080611f7d8385612e75565b905083811015611f6957600080fd5b60006001836001811115611fa257611fa2612d78565b03611fba576000808551602087018986f49050611fca565b600080855160208701888a87f190505b95945050505050565b600081831015611fe35781611f69565b5090919050565b600082821115611ff957600080fd5b6000610db38385612eaa565b6000806001600160a01b0383161561201d578261201f565b325b90506001600160a01b0384166120b2576120513a861061203f573a612041565b855b61204b8989611f70565b90611f34565b6040519092506001600160a01b0382169083156108fc029084906000818181858888f193505050506120ad5760405162461bcd60e51b8152602060048201526005602482015264475330313160d81b6044820152606401610701565b612101565b6120c08561204b8989611f70565b91506120cd8482846123eb565b6121015760405162461bcd60e51b815260206004820152600560248201526423a998189960d91b6044820152606401610701565b5095945050505050565b600454156121435760405162461bcd60e51b8152602060048201526005602482015264047533230360dc1b6044820152606401610701565b81518111156121645760405162461bcd60e51b815260040161070190612d59565b600181101561219d5760405162461bcd60e51b815260206004820152600560248201526423a999181960d91b6044820152606401610701565b600160005b83518110156122be5760008482815181106121bf576121bf612ebd565b6020026020010151905060006001600160a01b0316816001600160a01b0316141580156121f657506001600160a01b038116600114155b801561220b57506001600160a01b0381163014155b80156122295750806001600160a01b0316836001600160a01b031614155b6122455760405162461bcd60e51b815260040161070190612c6d565b6001600160a01b03818116600090815260026020526040902054161561227d5760405162461bcd60e51b815260040161070190612c8c565b6001600160a01b03928316600090815260026020526040902080546001600160a01b03191693821693909317909255806122b681612cc1565b9150506121a2565b506001600160a01b0316600090815260026020526040902080546001600160a01b03191660011790559051600355600455565b600160008190526020527fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f546001600160a01b03161561235b5760405162461bcd60e51b8152602060048201526005602482015264047533130360dc1b6044820152606401610701565b6001600081905260208190527fcc69885fda6bcc1a4ace058b4a62bf5e179ea78fd58a1ccd71c22cc9b688792f80546001600160a01b03191690911790556001600160a01b03821615610802576123b78260008360015a611f8c565b6108025760405162461bcd60e51b8152602060048201526005602482015264047533030360dc1b6044820152606401610701565b604080516001600160a01b03841660248201526044808201849052825180830390910181526064909101909152602080820180516001600160e01b031663a9059cbb60e01b1781528251600093929184919082896127105a03f13d801561245d57602081146124655760009350612470565b819350612470565b600051158215171593505b5050509392505050565b6001600160a01b038116811461248f57600080fd5b50565b803561249d8161247a565b919050565b600080604083850312156124b557600080fd5b82356124c08161247a565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126124f557600080fd5b81356001600160401b038082111561250f5761250f6124ce565b604051601f8301601f19908116603f01168101908282118183101715612537576125376124ce565b8160405283815286602085880101111561255057600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561258657600080fd5b8435935060208501356001600160401b03808211156125a457600080fd5b6125b0888389016124e4565b945060408701359150808211156125c657600080fd5b506125d3878288016124e4565b949793965093946060013593505050565b6000602082840312156125f657600080fd5b8135611f698161247a565b80356002811061249d57600080fd5b6000806000806080858703121561262657600080fd5b84356126318161247a565b93506020850135925060408501356001600160401b0381111561265357600080fd5b61265f878288016124e4565b92505061266e60608601612601565b905092959194509250565b6000815180845260005b8181101561269f57602081850181015186830182015201612683565b506000602082860101526020601f19601f83011685010191505092915050565b8215158152604060208201526000610db36040830184612679565b600080604083850312156126ed57600080fd5b50508035926020909101359150565b602081526000611f696020830184612679565b60006020828403121561272157600080fd5b5035919050565b60008083601f84011261273a57600080fd5b5081356001600160401b0381111561275157600080fd5b60208301915083602082850101111561276957600080fd5b9250929050565b60008060008060008060008060008060006101408c8e03121561279257600080fd5b61279b8c612492565b9a5060208c013599506001600160401b038060408e013511156127bd57600080fd5b6127cd8e60408f01358f01612728565b909a5098506127de60608e01612601565b975060808d0135965060a08d0135955060c08d0135945061280160e08e01612492565b93506128106101008e01612492565b9250806101208e0135111561282457600080fd5b506128368d6101208e01358e016124e4565b90509295989b509295989b9093969950565b60008060006060848603121561285d57600080fd5b8335925060208401356001600160401b038082111561287b57600080fd5b612887878388016124e4565b9350604086013591508082111561289d57600080fd5b506128aa868287016124e4565b9150509250925092565b600081518084526020808501945080840160005b838110156128ed5781516001600160a01b0316875295820195908201906001016128c8565b509495945050505050565b602081526000611f6960208301846128b4565b6000806040838503121561291e57600080fd5b82356129298161247a565b915060208301356001600160401b0381111561294457600080fd5b612950858286016124e4565b9150509250929050565b6000806000806000806000806000806101008b8d03121561297a57600080fd5b8a356001600160401b038082111561299157600080fd5b818d0191508d601f8301126129a557600080fd5b8135818111156129b457600080fd5b8e60208260051b85010111156129c957600080fd5b60208381019d50909b508d013599506129e460408e01612492565b985060608d01359150808211156129fa57600080fd5b50612a078d828e01612728565b9097509550612a1a905060808c01612492565b9350612a2860a08c01612492565b925060c08b01359150612a3d60e08c01612492565b90509295989b9194979a5092959850565b600080600080600060808688031215612a6657600080fd5b8535612a718161247a565b94506020860135935060408601356001600160401b03811115612a9357600080fd5b612a9f88828901612728565b9094509250612ab2905060608701612601565b90509295509295909350565b604081526000612ad160408301856128b4565b905060018060a01b03831660208301529392505050565b60008060008060008060008060008060006101408c8e031215612b0a57600080fd5b8b35612b158161247a565b9a5060208c0135995060408c01356001600160401b03811115612b3757600080fd5b612b438e828f01612728565b909a509850612b56905060608d01612601565b965060808c0135955060a08c0135945060c08c0135935060e08c0135612b7b8161247a565b92506101008c0135612b8c8161247a565b809250506101208c013590509295989b509295989b9093969950565b60008060408385031215612bbb57600080fd5b8235612bc68161247a565b91506020830135612bd68161247a565b809150509250929050565b600080600060608486031215612bf657600080fd5b8335612c018161247a565b92506020840135612c118161247a565b91506040840135612c218161247a565b809150509250925092565b600080600060608486031215612c4157600080fd5b8335612c4c8161247a565b92506020840135612c5c8161247a565b929592945050506040919091013590565b602080825260059082015264475332303360d81b604082015260600190565b60208082526005908201526411d4cc8c0d60da1b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600060018201612cd357612cd3612cab565b5060010190565b604081526000612ced6040830185612679565b8281036020840152611fca8185612679565b600060208284031215612d1157600080fd5b81516001600160e01b031981168114611f6957600080fd5b60ff8281168282160390811115610ca657610ca6612cab565b8082028115828204841417610ca657610ca6612cab565b602080825260059082015264475332303160d81b604082015260600190565b634e487b7160e01b600052602160045260246000fd5b60028110612dac57634e487b7160e01b600052602160045260246000fd5b9052565b6001600160a01b038d168152602081018c90526101606040820181905281018a905260006101808b8d828501376000838d01820152601f8c01601f19168301612dfc606085018d612d8e565b8a60808501528960a08501528860c0850152612e2360e08501896001600160a01b03169052565b6001600160a01b0387166101008501528184820301610120850152612e4a82820187612679565b92505050612e646101408301846001600160a01b03169052565b9d9c50505050505050505050505050565b80820180821115610ca657610ca6612cab565b600082612ea557634e487b7160e01b600052601260045260246000fd5b500490565b81810381811115610ca657610ca6612cab565b634e487b7160e01b600052603260045260246000fd5b6080808252810185905260008660a08301825b88811015612f16578235612ef98161247a565b6001600160a01b0316825260209283019290910190600101612ee6565b50602084019690965250506001600160a01b039283166040820152911660609091015292915050565b8183823760009101908152919050565b8b81526001600160a01b038b81166020830152604082018b9052606082018a9052610160820190612f83608084018b612d8e565b60a083019890985260c082019690965260e0810194909452918516610100840152909316610120820152610140019190915295945050505050565b600081612fcd57612fcd612cab565b50600019019056fea26469706673582212206ce4e285854d8cc5f00a54ea18cf2ce05e4618bd0f53d67098090c38d919cf5264736f6c63430008130033