0xe400c4e3b84c5b73845b8c7f19ff00387f3bded36bf2ba1976564a2299f6ec83
Safe Transaction on 0x8b43...f593
Overview
Transaction Data
0x8d80ff0a00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000007aaf004e59b44847b379578588920ca78fbf26c0b4956c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005ab3696e746572666f6c642d63726973702d7631000000000000000000000000000060a060405230608052348015610013575f5ffd5b5061001c610029565b610024610029565b6100e5565b5f54610100900460ff16156100945760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146100e3575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b60805161597a6101195f395f8181610e1201528181610e5201528181610ed901528181610f190152610f90015261597a5ff3fe6080604052600436106102a5575f3560e01c8063830aa8301161016f578063c9c4bfca116100d8578063e306bee711610092578063ee57e36f1161006d578063ee57e36f146108db578063eed7a9be146108fa578063f60046b21461092d578063fe0d94c114610942575f5ffd5b8063e306bee71461085d578063ea65ab8214610890578063eb0772c9146108af575f5ffd5b8063c9c4bfca146107a5578063cc63604a146107d8578063da35c664146107f7578063dd63c06f1461080b578063e138bd701461081f578063e28c3b191461083f575f5ffd5b8063b6b55f2511610129578063b6b55f25146106dc578063babbc052146106fb578063bb225da21461071a578063c218c13214610739578063c7f758a814610758578063c98425ee14610784575f5ffd5b8063830aa8301461060d5780638cb75059146106215780638cf49e861461065457806397f4d83414610669578063a509aba41461069e578063a6286870146106bd575f5ffd5b80634f1ef286116102115780635c60da1b116101cb5780635c60da1b146105705780636da0442414610584578063754f2311146105985780637a5b4f59146105b75780637c36e8e8146105cb5780637d6a3e5a146105ee575f5ffd5b80634f1ef286146104a657806352d1902d146104b9578063536f9f42146104cd57806356715761146104ec5780635b7baf64146105255780635c10fa9a14610544575f5ffd5b80632e1a7d4d116102625780632e1a7d4d146103af5780633659cfe6146103ce5780633d3f4b1b146103ed5780634162169f1461043b57806341de68301461046c578063449eaac714610486575f5ffd5b806301ffc9a7146102a9578063035fdd3c146102dd578063054fd2c2146102fe57806311ce24381461032a5780631f23c52b1461036b5780632ae9c6001461038e575b5f5ffd5b3480156102b4575f5ffd5b506102c86102c33660046141b4565b610961565b60405190151581526020015b60405180910390f35b3480156102e8575f5ffd5b506102fc6102f73660046141db565b61098b565b005b348015610309575f5ffd5b506101645463ffffffff165b60405163ffffffff90911681526020016102d4565b348015610335575f5ffd5b5061035d7f8c433a4cd6b51969eca37f974940894297b9fcf4b282a213fea5cd8f85289c9081565b6040519081526020016102d4565b348015610376575f5ffd5b5061037f610cb8565b6040516102d493929190614271565b348015610399575f5ffd5b506103a2610d6a565b6040516102d4919061429b565b3480156103ba575f5ffd5b506102fc6103c93660046142ce565b610d93565b3480156103d9575f5ffd5b506102fc6103e83660046142f9565b610e08565b3480156103f8575f5ffd5b5060408051808201909152601981527f2875696e7432353620616c6c6f774661696c7572654d6170290000000000000060208201525b6040516102d49190614314565b348015610446575f5ffd5b5060c9546001600160a01b03165b6040516001600160a01b0390911681526020016102d4565b348015610477575f5ffd5b505f6040516102d49190614326565b348015610491575f5ffd5b5061016054610454906001600160a01b031681565b6102fc6104b43660046144a7565b610ecf565b3480156104c4575f5ffd5b5061035d610f84565b3480156104d8575f5ffd5b5061035d6104e73660046142ce565b611035565b3480156104f7575f5ffd5b5061016454600160401b90046001600160401b03165b6040516001600160401b0390911681526020016102d4565b348015610530575f5ffd5b5061035d61053f3660046142ce565b6110a1565b34801561054f575f5ffd5b5061035d61055e3660046142f9565b6101666020525f908152604090205481565b34801561057b575f5ffd5b50610454611340565b34801561058f575f5ffd5b5061050d61134e565b3480156105a3575f5ffd5b5061035d6105b2366004614512565b6113cd565b3480156105c2575f5ffd5b5061042e61145b565b3480156105d6575f5ffd5b5061016454640100000000900463ffffffff16610315565b3480156105f9575f5ffd5b506102fc6106083660046145a7565b61150f565b348015610618575f5ffd5b5061035d6115d9565b34801561062c575f5ffd5b5061035d7f568cc693d84eb1901f8bcecba154cbdef23ca3cf67efc0a0b698528a06c660f781565b34801561065f575f5ffd5b506101635461035d565b348015610674575f5ffd5b506104546106833660046142ce565b6101676020525f90815260409020546001600160a01b031681565b3480156106a9575f5ffd5b5061035d6106b8366004614607565b611650565b3480156106c8575f5ffd5b5061035d6106d73660046142ce565b6116f7565b3480156106e7575f5ffd5b506102fc6106f63660046142ce565b61183e565b348015610706575f5ffd5b506102fc610715366004614622565b6118ad565b348015610725575f5ffd5b506102fc61073436600461463b565b6118f8565b348015610744575f5ffd5b506102c86107533660046142ce565b611948565b348015610763575f5ffd5b506107776107723660046142ce565b6119a2565b6040516102d491906147bb565b34801561078f575f5ffd5b50610798611c53565b6040516102d4919061484d565b3480156107b0575f5ffd5b5061035d7f821b6e3a557148015a918c89e5d092e878a69854a2d1a410635f771bd5a8a3f581565b3480156107e3575f5ffd5b506102c86107f23660046142ce565b611cae565b348015610802575f5ffd5b5061035d611ce0565b348015610816575f5ffd5b50610798611cfa565b34801561082a575f5ffd5b5061015f54610454906001600160a01b031681565b34801561084a575f5ffd5b50610161546001600160a01b0316610454565b348015610868575f5ffd5b5061035d7f4707e94b25cfce1a7c363508fbb838c35864388ad77284b248282b9746982b9b81565b34801561089b575f5ffd5b5061035d6108aa36600461487d565b611d9c565b3480156108ba575f5ffd5b506108ce6108c93660046142ce565b6122a6565b6040516102d491906149f5565b3480156108e6575f5ffd5b506102fc6108f5366004614a07565b6123f0565b348015610905575f5ffd5b5061035d7f2cf8b99554b63927353c04c2e1cee7fe05352aeb3c52d2576a2f7fd7fb8e180a81565b348015610938575f5ffd5b506101625461035d565b34801561094d575f5ffd5b506102fc61095c3660046142ce565b61246c565b5f6001600160e01b03198216630b902f8b60e31b1480610985575061098582612712565b92915050565b5f54610100900460ff16158080156109a957505f54600160ff909116105b806109c25750303b1580156109c257505f5460ff166001145b610a2a5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff191660011790558015610a4b575f805461ff0019166101001790555b610a60610a5b60208401846142f9565b612736565b5f610a7160608401604085016142f9565b6001600160a01b03161480610a9d57505f610a9260c0840160a085016142f9565b6001600160a01b0316145b15610abb5760405163d92e233d60e01b815260040160405180910390fd5b610acb60608301604084016142f9565b61015f80546001600160a01b0319166001600160a01b0392909216919091179055610afc60408301602084016142f9565b61016180546001600160a01b0319166001600160a01b0392831617905561015f546040805163647846a560e01b81529051919092169163647846a59160048083019260209291908290030181865afa158015610b5a573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b7e9190614a45565b61016080546001600160a01b0319166001600160a01b0392909216919091179055610baf6080830160608401614a60565b610168805460ff19166001836002811115610bcc57610bcc614212565b0217905550610be160a0830160808401614a7b565b610168805460ff929092166101000261ff0019909216919091179055610c0d60c0830160a084016142f9565b61016880546001600160a01b0392909216620100000262010000600160b01b0319909216919091179055610c4460c0830183614a96565b61016991610c53919083614b55565b50610c6e610c6936849003840160e08501614c21565b612765565b8015610cb4575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a15b5050565b6101685461016980545f92839260609260ff8084169361010090041691908190610ce190614ad8565b80601f0160208091040260200160405190810160405280929190818152602001828054610d0d90614ad8565b8015610d585780601f10610d2f57610100808354040283529160200191610d58565b820191905f5260205f20905b815481529060010190602001808311610d3b57829003601f168201915b50505050509050925092509250909192565b610d72614000565b506040805160608101825260018152600460208201525f9181019190915290565b335f908152610166602052604081208054839290610db2908490614cb7565b909155505061016054610dcf906001600160a01b031633836128c7565b60405181815233907f78473f3f373f7673597f4f0fa5873cb4d375fea6d4339ad6b56dbd411513cb3f906020015b60405180910390a250565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610e505760405162461bcd60e51b8152600401610a2190614cca565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610e8261292a565b6001600160a01b031614610ea85760405162461bcd60e51b8152600401610a2190614d16565b610eb181612945565b604080515f80825260208201909252610ecc9183919061297e565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610f175760405162461bcd60e51b8152600401610a2190614cca565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610f4961292a565b6001600160a01b031614610f6f5760405162461bcd60e51b8152600401610a2190614d16565b610f7882612945565b610cb48282600161297e565b5f306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146110235760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610a21565b505f5160206158fe5f395f51905f5290565b61016154604051632394e7a360e21b8152600481018390525f916001600160a01b031690638e539e8c90602401602060405180830381865afa15801561107d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109859190614d62565b5f81815261016560205260408120600301546110d357604051630853c2a360e41b815260048101839052602401610a21565b5f82815261016560209081526040808320600c0154610167909252808320546101605491516370a0823160e01b815230600482015292936001600160a01b0391821693909291909116906370a0823190602401602060405180830381865afa158015611141573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111659190614d62565b905061015f5f9054906101000a90046001600160a01b03166001600160a01b031663f0691cba6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111b8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111dc9190614a45565b6001600160a01b031663ec3c3fa8846040518263ffffffff1660e01b815260040161120991815260200190565b6020604051808303815f875af1158015611225573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112499190614d62565b50610160546040516370a0823160e01b815230600482015282916001600160a01b0316906370a0823190602401602060405180830381865afa158015611291573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112b59190614d62565b6112bf9190614cb7565b6001600160a01b0383165f90815261016660205260408120805492965086929091906112ec908490614d84565b92505081905550816001600160a01b031683867f2d86d2232710487ba4907f1e98cab42d8b08ab0342b39cbf17f42804d234f1398760405161133091815260200190565b60405180910390a4505050919050565b5f61134961292a565b905090565b5f61134961016860029054906101000a90046001600160a01b03166001600160a01b0316636da044246040518163ffffffff1660e01b8152600401602060405180830381865afa1580156113a4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113c89190614d62565b612ae8565b5f6113d88383612b53565b61015f5491945092506001600160a01b03166317757cc36113f98585612c5a565b6040518263ffffffff1660e01b81526004016114159190614db9565b602060405180830381865afa158015611430573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114549190614d62565b9392505050565b7f47ff9796f72d439c6e5c30a24b9fad985a00c85a9f2258074c400a94f8746b00805460609190819061148d90614ad8565b80601f01602080910402602001604051908101604052809291908181526020018280546114b990614ad8565b80156115045780601f106114db57610100808354040283529160200191611504565b820191905f5260205f20905b8154815290600101906020018083116114e757829003601f168201915b505050505091505090565b60c9547f2cf8b99554b63927353c04c2e1cee7fe05352aeb3c52d2576a2f7fd7fb8e180a9061154c906001600160a01b031630335b845f36612efc565b610168805486919060ff1916600183600281111561156c5761156c614212565b0217905550610168805461ff00191661010060ff871602179055610169611594838583614b55565b507ff285ada6394623bc144d01aa9ac3177f4dcd0ef0d1f7b9619dc3e56593423de0858585856040516115ca9493929190614ea0565b60405180910390a15050505050565b5f61016860029054906101000a90046001600160a01b03166001600160a01b031663830aa8306040518163ffffffff1660e01b8152600401602060405180830381865afa15801561162c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113499190614d62565b5f5f61165a61134e565b90505f6116678483614ecb565b90506116738282612b53565b61015f5491935091506001600160a01b03166317757cc36116948484612c5a565b6040518263ffffffff1660e01b81526004016116b09190614db9565b602060405180830381865afa1580156116cb573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116ef9190614d62565b949350505050565b5f818152610165602052604081206003015461172957604051630853c2a360e41b815260048101839052602401610a21565b5f82815261016560205260409020805460609060ff1615611799576008820180546040805160208084028201810190925282815292919083018282801561178d57602002820191905f5260205f20905b815481526020019060010190808311611779575b50505050509050611815565b61016854600c83015460405163527350af60e01b81526004810191909152620100009091046001600160a01b03169063527350af906024015f60405180830381865afa1580156117eb573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526118129190810190614f45565b90505b611826818360010160050154612fb6565b611831576001611833565b5f5b60ff16949350505050565b61185733610160546001600160a01b0316903084613016565b335f908152610166602052604081208054839290611876908490614d84565b909155505060405181815233907f630c125b5b9a3b15925e9e1a35a6032d751b7b3377cca746663d5c45094e91d190602001610dfd565b60c9547f2cf8b99554b63927353c04c2e1cee7fe05352aeb3c52d2576a2f7fd7fb8e180a906118e6906001600160a01b03163033611544565b610cb4610c6936849003840184614c21565b60c9547f568cc693d84eb1901f8bcecba154cbdef23ca3cf67efc0a0b698528a06c660f790611931906001600160a01b03163033611544565b610cb461194336849003840184614f82565b613054565b5f818152610165602052604081206003015461197a57604051630853c2a360e41b815260048101839052602401610a21565b5f828152610165602052604090205460ff161561199957506001919050565b61098582613135565b6119aa61401e565b5f8281526101656020908152604091829020825160e08082018552825460ff9081161515835285516101008101875260018086018054835260028701546001600160401b03808216858b0152600160401b90910416988301989098526003860154606083015260048601546080830152600586015460a0830152600686015460c0830152600786015494979596880195919491938501929190911690811115611a5557611a55614212565b6001811115611a6657611a66614212565b905250815260408051600884018054602081810284018501855283810182815295019492939192849290918491840182828015611ac057602002820191905f5260205f20905b815481526020019060010190808311611aac575b505050505081525050815260200160098201805480602002602001604051908101604052809291908181526020015f905b82821015611bd2575f848152602090819020604080516060810182526003860290920180546001600160a01b0316835260018101549383019390935260028301805492939291840191611b4390614ad8565b80601f0160208091040260200160405190810160405280929190818152602001828054611b6f90614ad8565b8015611bba5780601f10611b9157610100808354040283529160200191611bba565b820191905f5260205f20905b815481529060010190602001808311611b9d57829003601f168201915b50505050508152505081526020019060010190611af1565b50505090825250600a820154602080830191909152604080518082018252600b850180546001600160a01b038116835292909401939092909190830190600160a01b900460ff166001811115611c2a57611c2a614212565b6001811115611c3b57611c3b614212565b9052508152600c919091015460209091015292915050565b611c5b61407a565b6040805180820190915260fb80546001600160a01b03811683526020830190600160a01b900460ff166001811115611c9557611c95614212565b6001811115611ca657611ca6614212565b905250919050565b5f818152610165602052604081206003015461199957604051630853c2a360e41b815260048101839052602401610a21565b5f604051631bebc11560e01b815260040160405180910390fd5b611d0261407a565b6040805180820190915260fb80546001600160a01b03811683525f9291906020830190600160a01b900460ff166001811115611d4057611d40614212565b6001811115611d5157611d51614212565b90525080519091506001600160a01b0316611d97576040518060400160405280611d8360c9546001600160a01b031690565b6001600160a01b031681526020015f905290505b919050565b60c9545f907f8c433a4cd6b51969eca37f974940894297b9fcf4b282a213fea5cd8f85289c9090611dd7906001600160a01b03163033611544565b611e388688604051602001611ded929190614fc3565b60408051601f198184030181528282528051602091820120468483015243848401523060608501526080808501919091528251808503909101815260a0909301909152815191012090565b5f8181526101656020526040902060038101549193509015611e70576040516312dba68f60e01b815260048101849052602401610a21565b611e79886131cb565b5f8481526101676020908152604090912080546001600160a01b0319166001600160a01b0393909316929092179091558451611ebc919086018101908601614d62565b600a820155611ecb8686612b53565b909650945060015f611edd8888612c5a565b61015f546040516317757cc360e01b81529192505f916001600160a01b03909116906317757cc390611f13908590600401614db9565b602060405180830381865afa158015611f2e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f529190614d62565b61010083018190529050611f66868261337e565b61015f5461016054611f85916001600160a01b03918216911683613401565b61015f5460405163057da3dd60e01b81525f916001600160a01b03169063057da3dd90611fb6908690600401614db9565b5f604051808303815f875af1158015611fd1573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611ff8919081019061509e565b5060408051600380825260808201909252919250602082016060803683375050815161202d9260088901925060200190614093565b50604051806101000160405280600381526020018b6001600160401b031681526020018a6001600160401b03168152602001600161206961348f565b6120739190614cb7565b81526101635460208201526101645463ffffffff80821660408401526401000000009091041660608201526080018560018111156120b3576120b3614212565b905280516001808801918255602083015160028901805460408601516001600160401b03908116600160401b026fffffffffffffffffffffffffffffffff19909216931692909217919091179055606083015160038901556080830151600489015560a0830151600589015560c0830151600689015560e08301516007890180549192909160ff191690838181111561214e5761214e614212565b021790555090505061215e611cfa565b8051600b870180546001600160a01b031981166001600160a01b0390931692831782556020840151919283916001600160a81b03191617600160a01b8360018111156121ac576121ac614212565b02179055505050600c850155505f9150505b875181101561224c57816009018882815181106121dd576121dd615203565b6020908102919091018101518254600180820185555f94855293839020825160039092020180546001600160a01b0319166001600160a01b0390921691909117815591810151928201929092556040820151600282019061223e9082615217565b5050508060010190506121be565b50336001600160a01b0316837fa6c1f8f4276dc3f243459e13b557c84e8f4e90b2e09070bad5f6909cee687c9288888c8c87600a01546040516122939594939291906152d1565b60405180910390a3505095945050505050565b6040805160208101909152606081525f82815261016560205260409020600301546122e757604051630853c2a360e41b815260048101839052602401610a21565b5f82815261016560205260409020805460ff1661238e5761016854600c82015460405163527350af60e01b815260048101919091525f916201000090046001600160a01b03169063527350af906024015f60405180830381865afa158015612351573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526123789190810190614f45565b6040805160208101909152908152949350505050565b6040805160088301805460208181028401850185528301818152929391928492909184918401828280156123df57602002820191905f5260205f20905b8154815260200190600101908083116123cb575b505050505081525050915050919050565b60c9547f4707e94b25cfce1a7c363508fbb838c35864388ad77284b248282b9746982b9b90612429906001600160a01b03163033611544565b61246783838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f9201919091525061350b92505050565b505050565b5f818152610165602052604090206003015461249e57604051630853c2a360e41b815260048101829052602401610a21565b5f818152610165602052604090206002810154600160401b90046001600160401b03164210156124e457604051639fefd0f160e01b815260048101839052602401610a21565b61016854600c82015460405163527350af60e01b815260048101919091525f916201000090046001600160a01b03169063527350af906024015f60405180830381865afa158015612537573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261255e9190810190614f45565b905061256a8382613567565b61258a57604051639fefd0f160e01b815260048101849052602401610a21565b805161259f9060088401906020840190614093565b50815460ff19166001178255600b820154600983018054604080516020808402820181019092528281526126e1946001600160a01b031693889391929091905f9084015b828210156126c4575f848152602090819020604080516060810182526003860290920180546001600160a01b031683526001810154938301939093526002830180549293929184019161263590614ad8565b80601f016020809104026020016040519081016040528092919081815260200182805461266190614ad8565b80156126ac5780601f10612683576101008083540402835291602001916126ac565b820191905f5260205f20905b81548152906001019060200180831161268f57829003601f168201915b505050505081525050815260200190600101906125e3565b50505050600a860154600b870154600160a01b900460ff166136d1565b505060405183907f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f905f90a2505050565b5f6001600160e01b03198216634a06561b60e11b1480610985575061098582613858565b5f54610100900460ff1661275c5760405162461bcd60e51b8152600401610a2190615326565b610ecc81613897565b6064816040015163ffffffff1611156127a657604080820151905163cc80c19560e01b81526064600482015263ffffffff9091166024820152604401610a21565b6127b260016064614cb7565b816060015163ffffffff1611156127fc576127cf60016064614cb7565b606082015160405163cc80c19560e01b8152600481019290925263ffffffff166024820152604401610a21565b805161016281905560208083015161016381905560408085015161016480546060808901516080808b015163ffffffff96871667ffffffffffffffff19909516851764010000000097909316968702929092176fffffffffffffffff00000000000000001916600160401b6001600160401b039093169283021790945585519889529688019590955292860192909252918401919091528201527f7aa040f09767ff6a0bbf5ff522b1782e1d8640c48ed679e28171e7290d69ed4e9060a0015b60405180910390a150565b6040516001600160a01b03831660248201526044810182905261246790849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526138df565b5f5160206158fe5f395f51905f52546001600160a01b031690565b60c9547f821b6e3a557148015a918c89e5d092e878a69854a2d1a410635f771bd5a8a3f590610cb4906001600160a01b03163033611544565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156129b157612467836139b2565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612a0b575060408051601f3d908101601f19168201909252612a0891810190614d62565b60015b612a6e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610a21565b5f5160206158fe5f395f51905f528114612adc5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610a21565b50612467838383613a4d565b5f6001600160401b03821115612b4f5760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203660448201526534206269747360d01b6064820152608401610a21565b5090565b5f5f5f612b5e61134e565b90506001600160401b0385161580612b875750806001600160401b0316856001600160401b0316105b15612b9457809250612b98565b8492505b610164545f90612bb890600160401b90046001600160401b031685614ecb565b9050846001600160401b03165f03612bd257809250612c0b565b856001600160401b0316856001600160401b03161115612c0757612bf68686615371565b612c009085614ecb565b9250612c0b565b8092505b806001600160401b0316836001600160401b03161015612c5157604051631332703d60e21b81526001600160401b03808316600483015284166024820152604401610a21565b50509250929050565b612c626140d8565b610163545f612c6f613a71565b905080821015612c7d578091505b610161546040515f91612cad916001600160a01b0390911690859060039060019086906002908290602001615390565b60408051601f19818403018152610120830190915261016854909250819060ff166002811115612cdf57612cdf614212565b81526020016040518060400160405280896001600160401b03168152602001612d066115d9565b612d19906001600160401b038b16614d84565b90528152610168546201000081046001600160a01b03166020830152610100900460ff1660408201526101698054606090920191612d5690614ad8565b80601f0160208091040260200160405190810160405280929190818152602001828054612d8290614ad8565b8015612dcd5780601f10612da457610100808354040283529160200191612dcd565b820191905f5260205f20905b815481529060010190602001808311612db057829003601f168201915b505050918352505060208101839052610160546001600160a01b0390811660408084019190915261015f54610168549151630ba2d08360e31b815261010090920460ff1660048301526060909301927f2c2a814a0495f913a3a312fc4771e37552bc14f8a2d4075a08122d356f0849c6921690635d168418906024015f60405180830381865afa158015612e63573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612e8a91908101906153e1565b8051602091820120604051612ed393927f9ae5be6a352cd245259ba1cc07b57c755ecd466f62ff9b95d3ec77f05b8c24b091019283526020830191909152604082015260600190565b60408051601f19818403018152919052805160209182012082525f199101529695505050505050565b604051637ef7c88360e11b81526001600160a01b0387169063fdef910690612f309088908890889088908890600401615412565b602060405180830381865afa158015612f4b573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f6f9190615454565b612fae57604051630cb6f8ed60e21b81526001600160a01b03808816600483015280871660248301528516604482015260648101849052608401610a21565b505050505050565b5f82600181518110612fca57612fca615203565b602002602001015182612fdd919061546d565b835f81518110612fef57612fef615203565b60200260200101518360646130049190614cb7565b61300e919061546d565b119392505050565b6040516001600160a01b038085166024830152831660448201526064810182905261304e9085906323b872dd60e01b906084016128f3565b50505050565b8051613070906001600160a01b0316632a4f53ad60e11b613bb9565b8015613091575060018160200151600181111561308f5761308f614212565b145b156130b1578060405163266d0fb960e01b8152600401610a21919061484d565b805160fb80546001600160a01b039092166001600160a01b031983168117825560208401518493909183916001600160a81b03191617600160a01b8360018111156130fe576130fe614212565b02179055509050507f88e879ae0d71faf3aa708f2978daccb99b95243615dc104835b8c5a21c884ae6816040516128bc919061484d565b610168545f8281526101656020526040808220600c0154905163527350af60e01b8152600481019190915290918291620100009091046001600160a01b03169063527350af906024015f60405180830381865afa158015613198573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526131bf9190810190614f45565b90506114548382613567565b5f81516060036132af575f5f838060200190518101906131eb9190615495565b50915091506131f73390565b6001600160a01b0316826001600160a01b0316036132ac576040516318feeb1560e31b8152600481018290526001600160a01b0383169063c7f758a8906024015f60405180830381865afa158015613251573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052613278919081019061560e565b60c0015192506001600160a01b0383166132a5576040516361f186b360e11b815260040160405180910390fd5b5050919050565b50505b506101615433905f906001600160a01b0316633a46b1a88360016132d161348f565b6132db9190614cb7565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381865afa158015613322573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906133469190614d62565b6101625490915081101561337857604051633aae64d160e21b81526001600160a01b0383166004820152602401610a21565b50919050565b5f82815261016760209081526040808320546001600160a01b031680845261016690925290912054828110156133e05760405163021d4d7760e31b81526001600160a01b03831660048201526024810184905260448101829052606401610a21565b6001600160a01b039091165f90815261016660205260409020919003905550565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b1790526134528482613bd4565b61304e576040516001600160a01b03841660248201525f604482015261348590859063095ea7b360e01b906064016128f3565b61304e84826138df565b61016154604080516324776b7d60e21b815290515f926001600160a01b0316916391ddadf49160048083019260209291908290030181865afa9250505080156134f5575060408051601f3d908101601f191682019092526134f291810190615704565b60015b6134fe57504390565b65ffffffffffff16919050565b7f47ff9796f72d439c6e5c30a24b9fad985a00c85a9f2258074c400a94f8746b00806135378382615217565b507fbb39ebb37e60fb5d606ffdb749d2336e56b88e6c88c4bd6513b308f643186eed82604051610cab9190614314565b5f82815261016560205260408120805460ff1615613588575f915050610985565b5f805b84518110156135c3578481815181106135a6576135a6615203565b6020026020010151826135b99190614d84565b915060010161358b565b505f6135d58360010160020154611035565b9050805f036135e9575f9350505050610985565b61016854600c840154604051630db5e88d60e11b815260048101919091525f916201000090046001600160a01b031690631b6bd11a90602401602060405180830381865afa15801561363d573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136619190614d62565b9050805f03613676575f945050505050610985565b60058401545f9061368890849061546d565b6064613694848761546d565b61369e919061546d565b10159050806136b4575f95505050505050610985565b6136c5878660010160050154612fb6565b98975050505050505050565b60605f60018360018111156136e8576136e8614212565b036137d6575f6060886001600160a01b031688888860405160240161370f93929190615729565b60408051601f198184030181529181526020820180516001600160e01b03166331c6fcc960e21b179052516137449190615751565b5f60405180830381855af49150503d805f811461377c576040519150601f19603f3d011682016040523d82523d5f602084013e613781565b606091505b509092509050816137b55780511561379c5780518082602001fd5b6040516318cecad560e01b815260040160405180910390fd5b808060200190518101906137c99190615767565b909450925061384e915050565b6040516331c6fcc960e21b81526001600160a01b0388169063c71bf3249061380690899089908990600401615729565b5f604051808303815f875af1158015613821573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526138489190810190615767565b90925090505b9550959350505050565b5f6001600160e01b0319821663368d719960e21b148061388857506001600160e01b03198216633f4644d160e21b145b80610985575061098582613c75565b5f54610100900460ff166138bd5760405162461bcd60e51b8152600401610a2190615326565b60c980546001600160a01b0319166001600160a01b0392909216919091179055565b5f613933826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316613cf99092919063ffffffff16565b905080515f14806139535750808060200190518101906139539190615454565b6124675760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610a21565b6001600160a01b0381163b613a1f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610a21565b5f5160206158fe5f395f51905f5280546001600160a01b0319166001600160a01b0392909216919091179055565b613a5683613d07565b5f82511180613a625750805b156124675761304e8383613d46565b61015f5461016854604051630ba2d08360e31b815261010090910460ff1660048201525f9182916001600160a01b0390911690635d168418906024015f60405180830381865afa158015613ac7573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052613aee91908101906153e1565b806020019051810190613b019190615820565b6020015190505f613b1061348f565b90505f8115613b2957613b24600183614cb7565b613b2b565b5f5b61016154604051632394e7a360e21b81526004810183905291925084916001600160a01b0390911690638e539e8c90602401602060405180830381865afa158015613b78573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613b9c9190614d62565b613ba691906158de565b613bb1906001614d84565b935050505090565b5f613bc383613d6b565b801561145457506114548383613d9d565b5f5f5f846001600160a01b031684604051613bef9190615751565b5f604051808303815f865af19150503d805f8114613c28576040519150601f19603f3d011682016040523d82523d5f602084013e613c2d565b606091505b5091509150818015613c57575080511580613c57575080806020019051810190613c579190615454565b8015613c6c57506001600160a01b0385163b15155b95945050505050565b5f6001600160e01b0319821663041de68360e41b1480613ca457506001600160e01b03198216621574e360e91b145b80613cbf57506001600160e01b031982166352d1902d60e01b145b80613cda57506001600160e01b0319821663afc5b82360e01b145b8061098557506301ffc9a760e01b6001600160e01b0319831614610985565b60606116ef84845f85613e23565b613d10816139b2565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b6060611454838360405180606001604052806027815260200161591e60279139613eef565b5f613d7d826301ffc9a760e01b613d9d565b80156109855750613d96826001600160e01b0319613d9d565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b17815282515f9392849283928392918391908a617530fa92503d91505f519050828015613e0d575060208210155b8015613e1857505f81115b979650505050505050565b606082471015613e845760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610a21565b5f5f866001600160a01b03168587604051613e9f9190615751565b5f6040518083038185875af1925050503d805f8114613ed9576040519150601f19603f3d011682016040523d82523d5f602084013e613ede565b606091505b5091509150613e1887838387613f63565b60605f5f856001600160a01b031685604051613f0b9190615751565b5f60405180830381855af49150503d805f8114613f43576040519150601f19603f3d011682016040523d82523d5f602084013e613f48565b606091505b5091509150613f5986838387613f63565b9695505050505050565b60608315613fd15782515f03613fca576001600160a01b0385163b613fca5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610a21565b50816116ef565b6116ef8383815115613fe65781518083602001fd5b8060405162461bcd60e51b8152600401610a219190614314565b60405180606001604052806003906020820280368337509192915050565b6040518060e001604052805f15158152602001614039614128565b81526020016140546040518060200160405280606081525090565b8152602001606081526020015f815260200161406e61407a565b81526020015f81525090565b604080518082019091525f80825260208201905b905290565b828054828255905f5260205f209081019282156140cc579160200282015b828111156140cc5782518255916020019190600101906140b1565b50612b4f929150614182565b604080516101208101909152805f81526020016140f3614196565b81525f60208201819052604082018190526060808301819052608083015260a0820181905260c0820181905260e09091015290565b6040518061010001604052805f81526020015f6001600160401b031681526020015f6001600160401b031681526020015f81526020015f81526020015f81526020015f81526020015f600181111561408e5761408e614212565b5b80821115612b4f575f8155600101614183565b60405180604001604052806002906020820280368337509192915050565b5f602082840312156141c4575f5ffd5b81356001600160e01b031981168114611454575f5ffd5b5f602082840312156141eb575f5ffd5b81356001600160401b03811115614200575f5ffd5b82016101808185031215611454575f5ffd5b634e487b7160e01b5f52602160045260245ffd5b60038110610ecc57610ecc614212565b61423f81614226565b9052565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b61427a84614226565b83815260ff83166020820152606060408201525f613c6c6060830184614243565b6060810181835f5b60038110156142c557815160ff168352602092830192909101906001016142a3565b50505092915050565b5f602082840312156142de575f5ffd5b5035919050565b6001600160a01b0381168114610ecc575f5ffd5b5f60208284031215614309575f5ffd5b8135611454816142e5565b602081525f6114546020830184614243565b6020810161433383614226565b91905290565b634e487b7160e01b5f52604160045260245ffd5b604051606081016001600160401b038111828210171561436f5761436f614339565b60405290565b604080519081016001600160401b038111828210171561436f5761436f614339565b6040516101e081016001600160401b038111828210171561436f5761436f614339565b60405161012081016001600160401b038111828210171561436f5761436f614339565b604051608081016001600160401b038111828210171561436f5761436f614339565b604051601f8201601f191681016001600160401b038111828210171561442757614427614339565b604052919050565b5f6001600160401b0382111561444757614447614339565b50601f01601f191660200190565b5f82601f830112614464575f5ffd5b81356144776144728261442f565b6143ff565b81815284602083860101111561448b575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f5f604083850312156144b8575f5ffd5b82356144c3816142e5565b915060208301356001600160401b038111156144dd575f5ffd5b6144e985828601614455565b9150509250929050565b6001600160401b0381168114610ecc575f5ffd5b8035611d97816144f3565b5f5f60408385031215614523575f5ffd5b823561452e816144f3565b9150602083013561453e816144f3565b809150509250929050565b60038110610ecc575f5ffd5b60ff81168114610ecc575f5ffd5b5f5f83601f840112614573575f5ffd5b5081356001600160401b03811115614589575f5ffd5b6020830191508360208285010111156145a0575f5ffd5b9250929050565b5f5f5f5f606085870312156145ba575f5ffd5b84356145c581614549565b935060208501356145d581614555565b925060408501356001600160401b038111156145ef575f5ffd5b6145fb87828801614563565b95989497509550505050565b5f60208284031215614617575f5ffd5b8135611454816144f3565b5f60a0828403128015614633575f5ffd5b509092915050565b5f6040828403128015614633575f5ffd5b60028110610ecc57610ecc614212565b805182526001600160401b0360208201511660208301526001600160401b036040820151166040830152606081015160608301526080810151608083015260a081015160a083015260c081015160c083015260e08101516146bc8161464c565b8060e0840152505050565b8051602080845281518482018190525f9290910190829060408601905b8083101561470757835182526020820191506020840193506001830192506146e4565b5095945050505050565b5f82825180855260208501945060208160051b830101602085015f5b8381101561478957848303601f19018852815180516001600160a01b031684526020808201519085015260409081015160609185018290529061477290850182614243565b6020998a019990945092909201915060010161472d565b50909695505050505050565b80516001600160a01b0316825260208101516147b08161464c565b806020840152505050565b602081528151151560208201525f60208301516147db604084018261465c565b5060408301516101e06101408401526147f86102008401826146c7565b90506060840151601f19848303016101608501526148168282614711565b915050608084015161018084015260a08401516148376101a0850182614795565b5060c08401516101e08401528091505092915050565b604081016109858284614795565b5f6001600160401b0382111561487357614873614339565b5060051b60200190565b5f5f5f5f5f60a08688031215614891575f5ffd5b85356001600160401b038111156148a6575f5ffd5b6148b288828901614455565b95505060208601356001600160401b038111156148cd575f5ffd5b8601601f810188136148dd575f5ffd5b80356148eb6144728261485b565b8082825260208201915060208360051b85010192508a83111561490c575f5ffd5b602084015b838110156149a15780356001600160401b0381111561492e575f5ffd5b85016060818e03601f19011215614943575f5ffd5b61494b61434d565b6020820135614959816142e5565b81526040820135602082015260608201356001600160401b0381111561497d575f5ffd5b61498c8f602083860101614455565b60408301525084525060209283019201614911565b5096506149b49250505060408701614507565b92506149c260608701614507565b915060808601356001600160401b038111156149dc575f5ffd5b6149e888828901614455565b9150509295509295909350565b602081525f61145460208301846146c7565b5f5f60208385031215614a18575f5ffd5b82356001600160401b03811115614a2d575f5ffd5b614a3985828601614563565b90969095509350505050565b5f60208284031215614a55575f5ffd5b8151611454816142e5565b5f60208284031215614a70575f5ffd5b813561145481614549565b5f60208284031215614a8b575f5ffd5b813561145481614555565b5f5f8335601e19843603018112614aab575f5ffd5b8301803591506001600160401b03821115614ac4575f5ffd5b6020019150368190038213156145a0575f5ffd5b600181811c90821680614aec57607f821691505b60208210810361337857634e487b7160e01b5f52602260045260245ffd5b601f82111561246757805f5260205f20601f840160051c81016020851015614b2f5750805b601f840160051c820191505b81811015614b4e575f8155600101614b3b565b5050505050565b6001600160401b03831115614b6c57614b6c614339565b614b8083614b7a8354614ad8565b83614b0a565b5f601f841160018114614bb1575f8515614b9a5750838201355b5f19600387901b1c1916600186901b178355614b4e565b5f83815260208120601f198716915b82811015614be05786850135825560209485019460019092019101614bc0565b5086821015614bfc575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b803563ffffffff81168114611d97575f5ffd5b5f60a0828403128015614c32575f5ffd5b5060405160a081016001600160401b0381118282101715614c5557614c55614339565b60409081528335825260208085013590830152614c73908401614c0e565b6040820152614c8460608401614c0e565b60608201526080830135614c97816144f3565b60808201529392505050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561098557610985614ca3565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b5f60208284031215614d72575f5ffd5b5051919050565b8051611d97816142e5565b8082018082111561098557610985614ca3565b805f5b600281101561304e578151845260209384019390910190600101614d9a565b60208152614dcb602082018351614236565b5f6020830151614dde6040840182614d97565b5060408301516001600160a01b0316608083810191909152606084015160ff1660a084015283015161014060c0840152614e1c610160840182614243565b905060a0840151601f198483030160e0850152614e398282614243565b91505060c0840151614e576101008501826001600160a01b03169052565b5060e084015161012084015261010090930151610140909201919091525090565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b614ea985614226565b84815260ff84166020820152606060408201525f613f59606083018486614e78565b6001600160401b03818116838216019081111561098557610985614ca3565b5f82601f830112614ef9575f5ffd5b8151614f076144728261485b565b8082825260208201915060208360051b860101925085831115614f28575f5ffd5b602085015b83811015614707578051835260209283019201614f2d565b5f60208284031215614f55575f5ffd5b81516001600160401b03811115614f6a575f5ffd5b6116ef84828501614eea565b60028110610ecc575f5ffd5b5f6040828403128015614f93575f5ffd5b50614f9c614375565b8235614fa7816142e5565b81526020830135614fb781614f76565b60208201529392505050565b604081525f614fd56040830185614711565b8281036020840152613c6c8185614243565b8051611d9781614549565b5f82601f830112615001575f5ffd5b615009614375565b80604084018581111561501a575f5ffd5b845b8181101561503457805184526020938401930161501c565b509095945050505050565b8051611d9781614555565b5f6150576144728461442f565b905082815283838301111561506a575f5ffd5b8282602083015e5f602084830101529392505050565b5f82601f83011261508f575f5ffd5b6114548383516020850161504a565b5f5f604083850312156150af575f5ffd5b825160208401519092506001600160401b038111156150cc575f5ffd5b830161020081860312156150de575f5ffd5b6150e6614397565b815181526150f660208301614fe7565b6020820152604082810151908201526151128660608401614ff2565b606082015260a0820151608082015261512d60c08301614d79565b60a082015261513e60e0830161503f565b60c08201526101008201516001600160401b0381111561515c575f5ffd5b61516887828501615080565b60e08301525061517b6101208301614d79565b61010082015261518e6101408301614d79565b61012082015261016082810151610140830152610180830151908201526101a08201516001600160401b038111156151c4575f5ffd5b6151d087828501615080565b610180830152506151e46101c08301614d79565b6101a08201526101e091909101516101c0820152919491935090915050565b634e487b7160e01b5f52603260045260245ffd5b81516001600160401b0381111561523057615230614339565b6152448161523e8454614ad8565b84614b0a565b6020601f821160018114615276575f831561525f5750848201515b5f19600385901b1c1916600184901b178455614b4e565b5f84815260208120601f198516915b828110156152a55787850151825560209485019460019092019101615285565b50848210156152c257868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b6001600160401b03861681526001600160401b038516602082015260a060408201525f61530160a0830186614243565b82810360608401526153138186614711565b9150508260808301529695505050505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160401b03828116828216039081111561098557610985614ca3565b6001600160a01b0388168152602081018790526040810186905260e081016153b78661464c565b8560608301528460808301526153cc84614226565b60a082019390935260c0015295945050505050565b5f602082840312156153f1575f5ffd5b81516001600160401b03811115615406575f5ffd5b6116ef84828501615080565b6001600160a01b03868116825285166020820152604081018490526080606082018190525f90613e189083018486614e78565b80518015158114611d97575f5ffd5b5f60208284031215615464575f5ffd5b61145482615445565b808202811582820484141761098557610985614ca3565b805161ffff81168114611d97575f5ffd5b5f5f5f606084860312156154a7575f5ffd5b83516154b2816142e5565b602085015190935091506154c860408501615484565b90509250925092565b80516fffffffffffffffffffffffffffffffff81168114611d97575f5ffd5b8051611d97816144f3565b5f82601f83011261550a575f5ffd5b81516155186144728261485b565b8082825260208201915060208360051b860101925085831115615539575f5ffd5b602085015b838110156147075780516001600160401b0381111561555b575f5ffd5b86016060818903601f19011215615570575f5ffd5b61557861434d565b6020820151615586816142e5565b81526040820151602082015260608201516001600160401b038111156155aa575f5ffd5b6155b98a602083860101615080565b6040830152508452506020928301920161553e565b5f604082840312156155de575f5ffd5b6155e6614375565b905081516155f3816142e5565b8152602082015161560381614f76565b602082015292915050565b5f6020828403121561561e575f5ffd5b81516001600160401b03811115615633575f5ffd5b82016101408185031215615645575f5ffd5b61564d6143ba565b615656826154d1565b8152615664602083016154f0565b602082015261567560408301615484565b604082015261568660608301615484565b606082015261569760808301615445565b60808201526156a860a08301615445565b60a08201526156b960c08301614d79565b60c082015260e08201516001600160401b038111156156d6575f5ffd5b6156e2868285016154fb565b60e0830152506156f68561010084016155ce565b610100820152949350505050565b5f60208284031215615714575f5ffd5b815165ffffffffffff81168114611454575f5ffd5b838152606060208201525f6157416060830185614711565b9050826040830152949350505050565b5f82518060208501845e5f920191825250919050565b5f5f60408385031215615778575f5ffd5b82516001600160401b0381111561578d575f5ffd5b8301601f8101851361579d575f5ffd5b80516157ab6144728261485b565b8082825260208201915060208360051b8501019250878311156157cc575f5ffd5b602084015b8381101561580c5780516001600160401b038111156157ee575f5ffd5b6157fd8a602083890101615080565b845250602092830192016157d1565b506020969096015195979596505050505050565b5f60208284031215615830575f5ffd5b81516001600160401b03811115615845575f5ffd5b820160808185031215615856575f5ffd5b61585e6143dd565b815181526020808301519082015260408201516001600160401b03811115615884575f5ffd5b61589086828501614eea565b60408301525060608201516001600160401b038111156158ae575f5ffd5b80830192505084601f8301126158c2575f5ffd5b6158d18583516020850161504a565b6060820152949350505050565b5f826158f857634e487b7160e01b5f52601260045260245ffd5b50049056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220767d0113499d4dfa8cc9ccd9fb5cce95db267f81b832e426b48d3d3b5b5a78b464736f6c634300081d0033004e59b44847b379578588920ca78fbf26c0b4956c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e39696e746572666f6c642d63726973702d7631000000000000000000000000000060c060405234801561000f575f5ffd5b50604051611df9380380611df983398101604081905261002e91610044565b6001600160a01b0316608081905260a052610071565b5f60208284031215610054575f5ffd5b81516001600160a01b038116811461006a575f5ffd5b9392505050565b60805160a051611d306100c95f395f818160b6015281816104c9015281816105b7015281816106a60152818161079501528181610b5f01528181610cfe0152610ea401525f818161011a0152610a330152611d305ff3fe608060405234801561000f575f5ffd5b5060043610610085575f3560e01c80635c60da1b116100585780635c60da1b146101185780639cb0a1241461013e578063a8a9c29e1461015e578063f10832f11461017f575f5ffd5b806301ffc9a7146100895780630d405b7b146100b15780631c5d4013146100f05780632ae9c60014610103575b5f5ffd5b61009c610097366004611067565b6101a0565b60405190151581526020015b60405180910390f35b6100d87f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100a8565b61009c6100fe3660046110ac565b6101f0565b61010b6103fe565b6040516100a891906110c7565b7f00000000000000000000000000000000000000000000000000000000000000006100d8565b61015161014c366004611110565b610427565b6040516100a891906111c9565b61017161016c366004611211565b61090c565b6040516100a8929190611330565b61019261018d3660046113f3565b610944565b6040516100a8929190611480565b5f6001600160e01b0319821663099718b560e41b14806101cf57506001600160e01b03198216621574e360e91b145b806101ea57506301ffc9a760e01b6001600160e01b03198316145b92915050565b604080515f602480830182905283518084039091018152604490920183526020820180516001600160e01b0316632394e7a360e21b1790529151829182916001600160a01b03861691610242916114a3565b5f60405180830381855afa9150503d805f811461027a576040519150601f19603f3d011682016040523d82523d5f602084013e61027f565b606091505b50604080513060248083019190915282518083039091018152604490910182526020810180516001600160e01b03166309ab24eb60e41b17905290519294509092505f9182916001600160a01b038816916102da91906114a3565b5f60405180830381855afa9150503d805f8114610312576040519150601f19603f3d011682016040523d82523d5f602084013e610317565b606091505b50604080513060248201525f604480830182905283518084039091018152606490920183526020820180516001600160e01b0316630748d63560e31b17905291519395509193509182916001600160a01b038a169161037691906114a3565b5f60405180830381855afa9150503d805f81146103ae576040519150601f19603f3d011682016040523d82523d5f602084013e6103b3565b606091505b50915091508580156103c6575084516020145b80156103cf5750835b80156103dc575082516020145b80156103e55750815b80156103f2575080516020145b98975050505050505050565b61040661103c565b506040805160608101825260018152600460208201525f9181019190915290565b60408051600580825260c08201909252606091816020015b6040805160a0810182525f808252602080830182905292820181905260608201819052608082015282525f1990920191018161043f5750506040805160a081019091526001815290915060208082019061049b908501856110ac565b6001600160a01b03168152602001846001600160a01b031681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638cb750596040518163ffffffff1660e01b8152600401602060405180830381865afa158015610523573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061054791906114b9565b815250815f8151811061055c5761055c6114d0565b60209081029190910101526040805160a081019091528060018152602090810190610589908501856110ac565b6001600160a01b03168152602001846001600160a01b031681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663eed7a9be6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610611573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061063591906114b9565b8152508160018151811061064b5761064b6114d0565b60209081029190910101526040805160a081019091528060018152602090810190610678908501856110ac565b6001600160a01b031681526020016001600160a01b03801681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166311ce24386040518163ffffffff1660e01b8152600401602060405180830381865afa158015610700573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061072491906114b9565b8152508160028151811061073a5761073a6114d0565b60209081029190910101526040805160a081019091528060018152602090810190610767908501856110ac565b6001600160a01b03168152602001846001600160a01b031681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e306bee76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ef573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061081391906114b9565b81525081600481518110610829576108296114d0565b60209081029190910101526040805160a081019091528060018152602001846001600160a01b03168152602001835f01602081019061086891906110ac565b6001600160a01b031681526020015f6001600160a01b03168152602001846001600160a01b0316630729d0546040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e591906114b9565b815250816003815181106108fb576108fb6114d0565b602002602001018190525092915050565b606061092b604051806040016040528060608152602001606081525090565b60405163a112810160e01b815260040160405180910390fd5b5f610962604051806040016040528060608152602001606081525090565b5f5f5f858060200190518101906109799190611614565b919450925090506001600160a01b0382163b6109b8576040516318aca2db60e01b81526001600160a01b03831660048201526024015b60405180910390fd5b6109c182610f57565b6109e95760405163fa8925f160e01b81526001600160a01b03831660048201526024016109af565b6109f2826101f0565b610a1a57604051631cfe832160e11b81526001600160a01b03831660048201526024016109af565b6001600160a01b03878116845282166020840152610a917f000000000000000000000000000000000000000000000000000000000000000084604051602401610a639190611727565b60408051601f198184030181529190526020810180516001600160e01b031662d7f74f60e21b179052611001565b945060038115610aa957610aa6600282611811565b90505b5f8167ffffffffffffffff811115610ac357610ac361135d565b604051908082528060200260200182016040528015610b1a57816020015b6040805160a0810182525f808252602080830182905292820181905260608201819052608082015282525f19909201910181610ae15790505b506040805160a08101909152909150805f8152602001886001600160a01b031681526020018a6001600160a01b031681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638cb750596040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb9573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bdd91906114b9565b815250815f81518110610bf257610bf26114d0565b60209081029190910101526040805160a08101909152805f8152602001886001600160a01b031681526020018a6001600160a01b031681526020015f6001600160a01b03168152602001886001600160a01b031663eed7a9be6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c78573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c9c91906114b9565b81525081600181518110610cb257610cb26114d0565b60209081029190910101526040805160a08101909152805f8152602001886001600160a01b031681526020018a6001600160a01b031681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e306bee76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d58573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d7c91906114b9565b81525081600281518110610d9257610d926114d0565b60200260200101819052508215610f44576040805160a08101909152805f81526020018a6001600160a01b03168152602001886001600160a01b031681526020015f6001600160a01b031681526020018a6001600160a01b0316630729d0546040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e1e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e4291906114b9565b81525081600381518110610e5857610e586114d0565b60209081029190910101526040805160a08101909152805f8152602001886001600160a01b031681526020016001600160a01b03801681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166311ce24386040518163ffffffff1660e01b8152600401602060405180830381865afa158015610efe573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f2291906114b9565b81525081600481518110610f3857610f386114d0565b60200260200101819052505b6020860152509396929550919350505050565b6040513060248201525f90819081906001600160a01b0385169060440160408051601f198184030181529181526020820180516001600160e01b03166370a0823160e01b17905251610fa991906114a3565b5f60405180830381855afa9150503d805f8114610fe1576040519150601f19603f3d011682016040523d82523d5f602084013e610fe6565b606091505b5091509150818015610ff9575080516020145b949350505050565b5f82826040516110109061105a565b61101b929190611830565b604051809103905ff080158015611034573d5f5f3e3d5ffd5b509392505050565b60405180606001604052806003906020820280368337509192915050565b6104a78061185483390190565b5f60208284031215611077575f5ffd5b81356001600160e01b03198116811461108e575f5ffd5b9392505050565b6001600160a01b03811681146110a9575f5ffd5b50565b5f602082840312156110bc575f5ffd5b813561108e81611095565b6060810181835f5b60038110156110f157815160ff168352602092830192909101906001016110cf565b50505092915050565b5f6060828403121561110a575f5ffd5b50919050565b5f5f60408385031215611121575f5ffd5b823561112c81611095565b9150602083013567ffffffffffffffff811115611147575f5ffd5b611153858286016110fa565b9150509250929050565b600381106110a957634e487b7160e01b5f52602160045260245ffd5b5f81516111858161115d565b8352506020818101516001600160a01b0390811691840191909152604080830151821690840152606080830151909116908301526080908101519082015260a00190565b602080825282518282018190525f918401906040840190835b81811015611206576111f5838551611179565b6020949094019392506001016111e2565b509095945050505050565b5f5f5f60608486031215611223575f5ffd5b833561122e81611095565b9250602084013561ffff81168114611244575f5ffd5b9150604084013567ffffffffffffffff81111561125f575f5ffd5b61126b868287016110fa565b9150509250925092565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b8051604080845281519084018190525f9160200190829060608601905b808310156112eb5783516001600160a01b0316825260209384019360019390930192909101906112c0565b506020858101518783038883015280518084529082019450910191505f905b808210156112065761131d838551611179565b925060208401935060018201915061130a565b604081525f6113426040830185611275565b828103602084015261135481856112a3565b95945050505050565b634e487b7160e01b5f52604160045260245ffd5b604051610100810167ffffffffffffffff811182821017156113955761139561135d565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156113c4576113c461135d565b604052919050565b5f67ffffffffffffffff8211156113e5576113e561135d565b50601f01601f191660200190565b5f5f60408385031215611404575f5ffd5b823561140f81611095565b9150602083013567ffffffffffffffff81111561142a575f5ffd5b8301601f8101851361143a575f5ffd5b803561144d611448826113cc565b61139b565b818152866020838501011115611461575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b6001600160a01b03831681526040602082018190525f90610ff9908301846112a3565b5f82518060208501845e5f920191825250919050565b5f602082840312156114c9575f5ffd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80516114ef81611095565b919050565b8051600381106114ef575f5ffd5b805160ff811681146114ef575f5ffd5b5f82601f830112611521575f5ffd5b815161152f611448826113cc565b818152846020838601011115611543575f5ffd5b8160208501602083015e5f918101602001919091529392505050565b805163ffffffff811681146114ef575f5ffd5b5f60a08284031215611582575f5ffd5b60405160a0810167ffffffffffffffff811182821017156115a5576115a561135d565b6040908152835182526020808501519083015290915081906115c890840161155f565b60408201526115d96060840161155f565b6060820152608083015167ffffffffffffffff811681146115f8575f5ffd5b6080919091015292915050565b805180151581146114ef575f5ffd5b5f5f5f60608486031215611626575f5ffd5b835167ffffffffffffffff81111561163c575f5ffd5b8401610180818703121561164e575f5ffd5b611656611371565b61165f826114e4565b815261166d602083016114e4565b602082015261167e604083016114e4565b604082015261168f606083016114f4565b60608201526116a060808301611502565b60808201526116b160a083016114e4565b60a082015260c082015167ffffffffffffffff8111156116cf575f5ffd5b6116db88828501611512565b60c0830152506116ee8760e08401611572565b60e082015293506117039050602085016114e4565b915061171160408501611605565b90509250925092565b6117238161115d565b9052565b602080825282516001600160a01b0316828201528201515f9061175560408401826001600160a01b03169052565b5060408301516001600160a01b038116606084015250606083015161177d608084018261171a565b50608083015160ff811660a08401525060a08301516001600160a01b03811660c08401525060c083015161018060e08401526117bd6101a0840182611275565b60e085015180516101008601526020810151610120860152604081015163ffffffff908116610140870152606082015116610160860152608081015167ffffffffffffffff16610180860152909150611034565b808201808211156101ea57634e487b7160e01b5f52601160045260245ffd5b6001600160a01b03831681526040602082018190525f90610ff99083018461127556fe60806040526040516104a73803806104a7833981016040819052610022916102b0565b61002d82825f610034565b50506103ca565b61003d8361005f565b5f825111806100495750805b1561005a57610058838361009e565b505b505050565b610068816100ca565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b60606100c383836040518060600160405280602781526020016104806027913961017d565b9392505050565b6001600160a01b0381163b61013c5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b60605f5f856001600160a01b031685604051610199919061037f565b5f60405180830381855af49150503d805f81146101d1576040519150601f19603f3d011682016040523d82523d5f602084013e6101d6565b606091505b5090925090506101e8868383876101f2565b9695505050505050565b606083156102605782515f03610259576001600160a01b0385163b6102595760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610133565b508161026a565b61026a8383610272565b949350505050565b8151156102825781518083602001fd5b8060405162461bcd60e51b81526004016101339190610395565b634e487b7160e01b5f52604160045260245ffd5b5f5f604083850312156102c1575f5ffd5b82516001600160a01b03811681146102d7575f5ffd5b60208401519092506001600160401b038111156102f2575f5ffd5b8301601f81018513610302575f5ffd5b80516001600160401b0381111561031b5761031b61029c565b604051601f8201601f19908116603f011681016001600160401b03811182821017156103495761034961029c565b604052818152828201602001871015610360575f5ffd5b8160208401602083015e5f602083830101528093505050509250929050565b5f82518060208501845e5f920191825250919050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b60aa806103d65f395ff3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6057565b565b5f60527f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b365f5f375f5f365f845af43d5f5f3e8080156070573d5ff35b3d5ffdfea264697066735822122007aa7ac058cdf2747ea0f18e9dd35f9bcdc2c61f0a4c70bdf360659b30114a9f64736f6c634300081d0033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212208c402fbc27b9f78b893cb4c77af162bb5381dd87ab625ad41a425bd9789c2e2964736f6c634300081d00330000000000000000000000008153c6dce903b3a4a886399d310668fb8c97cec6003c9f0abb016da5c1ccf944dddfd2a04dd43415a1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c4fc054427000000000000000000000000000000000000000000000000000000000000000100000000000000000000000068bc9c53cc6997f8c2dbe1645ad08b7026f9b27a000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Signatures
0x00000000000000000000000026f8034babfbca2233350a0dca1ccce3d01fa41f00000000000000000000000000000000000000000000000000000000000000000194c79274b7e0e820506bd757492a2de8775607b2c58a628a706aee8d1d41d5484d65ade610c057ad11ee31a1634a2d5639d4fe0f0a148ff9497fe9aec0dccf5a1b4ce78bbb3e446c0730a1fe253adbd6751daf9e0cd7350752073fba23f08744591dae97657150a2d7029d10fd0e398a885ab6bccc125435e57f24647d9a005de21c