0xc3a6a5d11c1d74d68dd233d326f115f83c1ec59185175f67d996af289c19402b
Safe Transaction on 0x8b43...f593
Overview
Transaction Data
0x8d80ff0a00000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000007687004e59b44847b379578588920ca78fbf26c0b4956c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000055e5696e746572666f6c642d63726973702d7631000000000000000000000000000060a060405230608052348015610013575f5ffd5b5061001c610029565b610024610029565b6100e5565b5f54610100900460ff16156100945760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b5f5460ff908116146100e3575f805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6080516154ac6101195f395f8181610d9a01528181610dda01528181610e6101528181610ea10152610f1801526154ac5ff3fe608060405260043610610275575f3560e01c80638cb750591161014a578063cc63604a116100be578063ea65ab8211610078578063ea65ab8214610818578063eb0772c914610837578063ee57e36f14610863578063eed7a9be14610882578063f60046b2146108b5578063fe0d94c1146108ca575f5ffd5b8063cc63604a14610760578063da35c6641461077f578063dd63c06f14610793578063e138bd70146107a7578063e28c3b19146107c7578063e306bee7146107e5575f5ffd5b8063babbc0521161010f578063babbc05214610683578063bb225da2146106a2578063c218c132146106c1578063c7f758a8146106e0578063c98425ee1461070c578063c9c4bfca1461072d575f5ffd5b80638cb75059146105c85780638cf49e86146105fb57806397f4d83414610610578063a628687014610645578063b6b55f2514610664575f5ffd5b8063449eaac7116101ec5780635c10fa9a116101a65780635c10fa9a146105135780635c60da1b1461053f578063754f2311146105535780637a5b4f59146105725780637c36e8e8146105865780637d6a3e5a146105a9575f5ffd5b8063449eaac7146104565780634f1ef2861461047657806352d1902d14610489578063536f9f421461049d57806356715761146104bc5780635b7baf64146104f4575f5ffd5b80632ae9c6001161023d5780632ae9c6001461035e5780632e1a7d4d1461037f5780633659cfe61461039e5780633d3f4b1b146103bd5780634162169f1461040b57806341de68301461043c575f5ffd5b806301ffc9a714610279578063035fdd3c146102ad578063054fd2c2146102ce57806311ce2438146102fa5780631f23c52b1461033b575b5f5ffd5b348015610284575f5ffd5b50610298610293366004613d51565b6108e9565b60405190151581526020015b60405180910390f35b3480156102b8575f5ffd5b506102cc6102c7366004613d78565b610913565b005b3480156102d9575f5ffd5b506101645463ffffffff165b60405163ffffffff90911681526020016102a4565b348015610305575f5ffd5b5061032d7f8c433a4cd6b51969eca37f974940894297b9fcf4b282a213fea5cd8f85289c9081565b6040519081526020016102a4565b348015610346575f5ffd5b5061034f610c40565b6040516102a493929190613e05565b348015610369575f5ffd5b50610372610cf2565b6040516102a49190613e2d565b34801561038a575f5ffd5b506102cc610399366004613e60565b610d1b565b3480156103a9575f5ffd5b506102cc6103b8366004613e8b565b610d90565b3480156103c8575f5ffd5b5060408051808201909152601981527f2875696e7432353620616c6c6f774661696c7572654d6170290000000000000060208201525b6040516102a49190613ea6565b348015610416575f5ffd5b5060c9546001600160a01b03165b6040516001600160a01b0390911681526020016102a4565b348015610447575f5ffd5b505f6040516102a49190613ec8565b348015610461575f5ffd5b5061016054610424906001600160a01b031681565b6102cc610484366004614027565b610e57565b348015610494575f5ffd5b5061032d610f0c565b3480156104a8575f5ffd5b5061032d6104b7366004613e60565b610fbd565b3480156104c7575f5ffd5b5061016454600160401b90046001600160401b03166040516001600160401b0390911681526020016102a4565b3480156104ff575f5ffd5b5061032d61050e366004613e60565b611029565b34801561051e575f5ffd5b5061032d61052d366004613e8b565b6101666020525f908152604090205481565b34801561054a575f5ffd5b506104246112c8565b34801561055e575f5ffd5b5061032d61056d366004614092565b6112d6565b34801561057d575f5ffd5b506103fe611364565b348015610591575f5ffd5b5061016454640100000000900463ffffffff166102e5565b3480156105b4575f5ffd5b506102cc6105c3366004614127565b611418565b3480156105d3575f5ffd5b5061032d7f568cc693d84eb1901f8bcecba154cbdef23ca3cf67efc0a0b698528a06c660f781565b348015610606575f5ffd5b506101635461032d565b34801561061b575f5ffd5b5061042461062a366004613e60565b6101676020525f90815260409020546001600160a01b031681565b348015610650575f5ffd5b5061032d61065f366004613e60565b6114e2565b34801561066f575f5ffd5b506102cc61067e366004613e60565b611629565b34801561068e575f5ffd5b506102cc61069d366004614187565b611698565b3480156106ad575f5ffd5b506102cc6106bc3660046141a0565b6116e3565b3480156106cc575f5ffd5b506102986106db366004613e60565b611733565b3480156106eb575f5ffd5b506106ff6106fa366004613e60565b61178d565b6040516102a49190614320565b348015610717575f5ffd5b50610720611a3e565b6040516102a491906143b2565b348015610738575f5ffd5b5061032d7f821b6e3a557148015a918c89e5d092e878a69854a2d1a410635f771bd5a8a3f581565b34801561076b575f5ffd5b5061029861077a366004613e60565b611a99565b34801561078a575f5ffd5b5061032d611acb565b34801561079e575f5ffd5b50610720611ae5565b3480156107b2575f5ffd5b5061015f54610424906001600160a01b031681565b3480156107d2575f5ffd5b50610161546001600160a01b0316610424565b3480156107f0575f5ffd5b5061032d7f4707e94b25cfce1a7c363508fbb838c35864388ad77284b248282b9746982b9b81565b348015610823575f5ffd5b5061032d6108323660046143e2565b611b87565b348015610842575f5ffd5b50610856610851366004613e60565b612091565b6040516102a4919061455a565b34801561086e575f5ffd5b506102cc61087d36600461456c565b6121db565b34801561088d575f5ffd5b5061032d7f2cf8b99554b63927353c04c2e1cee7fe05352aeb3c52d2576a2f7fd7fb8e180a81565b3480156108c0575f5ffd5b506101625461032d565b3480156108d5575f5ffd5b506102cc6108e4366004613e60565b612257565b5f6001600160e01b03198216630b902f8b60e31b148061090d575061090d826124fd565b92915050565b5f54610100900460ff161580801561093157505f54600160ff909116105b8061094a5750303b15801561094a57505f5460ff166001145b6109b25760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b5f805460ff1916600117905580156109d3575f805461ff0019166101001790555b6109e86109e36020840184613e8b565b612521565b5f6109f96060840160408501613e8b565b6001600160a01b03161480610a2557505f610a1a60c0840160a08501613e8b565b6001600160a01b0316145b15610a435760405163d92e233d60e01b815260040160405180910390fd5b610a536060830160408401613e8b565b61015f80546001600160a01b0319166001600160a01b0392909216919091179055610a846040830160208401613e8b565b61016180546001600160a01b0319166001600160a01b0392831617905561015f546040805163647846a560e01b81529051919092169163647846a59160048083019260209291908290030181865afa158015610ae2573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b0691906145aa565b61016080546001600160a01b0319166001600160a01b0392909216919091179055610b3760808301606084016145c5565b610168805460ff19166001836003811115610b5457610b54613daf565b0217905550610b6960a08301608084016145e0565b610168805460ff929092166101000261ff0019909216919091179055610b9560c0830160a08401613e8b565b61016880546001600160a01b0392909216620100000262010000600160b01b0319909216919091179055610bcc60c08301836145fb565b61016991610bdb9190836146ba565b50610bf6610bf136849003840160e08501614786565b612550565b8015610c3c575f805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a15b5050565b6101685461016980545f92839260609260ff8084169361010090041691908190610c699061463d565b80601f0160208091040260200160405190810160405280929190818152602001828054610c959061463d565b8015610ce05780601f10610cb757610100808354040283529160200191610ce0565b820191905f5260205f20905b815481529060010190602001808311610cc357829003601f168201915b50505050509050925092509250909192565b610cfa613b99565b506040805160608101825260018152600460208201525f9181019190915290565b335f908152610166602052604081208054839290610d3a90849061481c565b909155505061016054610d57906001600160a01b031633836126b2565b60405181815233907f78473f3f373f7673597f4f0fa5873cb4d375fea6d4339ad6b56dbd411513cb3f906020015b60405180910390a250565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610dd85760405162461bcd60e51b81526004016109a99061482f565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610e0a612715565b6001600160a01b031614610e305760405162461bcd60e51b81526004016109a99061487b565b610e3981612730565b604080515f80825260208201909252610e5491839190612769565b50565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610e9f5760405162461bcd60e51b81526004016109a99061482f565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610ed1612715565b6001600160a01b031614610ef75760405162461bcd60e51b81526004016109a99061487b565b610f0082612730565b610c3c82826001612769565b5f306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610fab5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c000000000000000060648201526084016109a9565b505f5160206154305f395f51905f5290565b61016154604051632394e7a360e21b8152600481018390525f916001600160a01b031690638e539e8c90602401602060405180830381865afa158015611005573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061090d91906148c7565b5f818152610165602052604081206003015461105b57604051630853c2a360e41b8152600481018390526024016109a9565b5f82815261016560209081526040808320600c0154610167909252808320546101605491516370a0823160e01b815230600482015292936001600160a01b0391821693909291909116906370a0823190602401602060405180830381865afa1580156110c9573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110ed91906148c7565b905061015f5f9054906101000a90046001600160a01b03166001600160a01b031663f0691cba6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611140573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061116491906145aa565b6001600160a01b031663ec3c3fa8846040518263ffffffff1660e01b815260040161119191815260200190565b6020604051808303815f875af11580156111ad573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111d191906148c7565b50610160546040516370a0823160e01b815230600482015282916001600160a01b0316906370a0823190602401602060405180830381865afa158015611219573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123d91906148c7565b611247919061481c565b6001600160a01b0383165f90815261016660205260408120805492965086929091906112749084906148e9565b92505081905550816001600160a01b031683867f2d86d2232710487ba4907f1e98cab42d8b08ab0342b39cbf17f42804d234f139876040516112b891815260200190565b60405180910390a4505050919050565b5f6112d1612715565b905090565b5f6112e183836128d3565b61015f5491945092506001600160a01b03166317757cc361130285856129c3565b6040518263ffffffff1660e01b815260040161131e919061491e565b602060405180830381865afa158015611339573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061135d91906148c7565b9392505050565b7f47ff9796f72d439c6e5c30a24b9fad985a00c85a9f2258074c400a94f8746b0080546060919081906113969061463d565b80601f01602080910402602001604051908101604052809291908181526020018280546113c29061463d565b801561140d5780601f106113e45761010080835404028352916020019161140d565b820191905f5260205f20905b8154815290600101906020018083116113f057829003601f168201915b505050505091505090565b60c9547f2cf8b99554b63927353c04c2e1cee7fe05352aeb3c52d2576a2f7fd7fb8e180a90611455906001600160a01b031630335b845f36612bbe565b610168805486919060ff1916600183600381111561147557611475613daf565b0217905550610168805461ff00191661010060ff87160217905561016961149d8385836146ba565b507ff285ada6394623bc144d01aa9ac3177f4dcd0ef0d1f7b9619dc3e56593423de0858585856040516114d39493929190614a05565b60405180910390a15050505050565b5f818152610165602052604081206003015461151457604051630853c2a360e41b8152600481018390526024016109a9565b5f82815261016560205260409020805460609060ff1615611584576008820180546040805160208084028201810190925282815292919083018282801561157857602002820191905f5260205f20905b815481526020019060010190808311611564575b50505050509050611600565b61016854600c83015460405163527350af60e01b81526004810191909152620100009091046001600160a01b03169063527350af906024015f60405180830381865afa1580156115d6573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526115fd9190810190614a2e565b90505b611611818360010160050154612c78565b61161c57600161161e565b5f5b60ff16949350505050565b61164233610160546001600160a01b0316903084612cd8565b335f9081526101666020526040812080548392906116619084906148e9565b909155505060405181815233907f630c125b5b9a3b15925e9e1a35a6032d751b7b3377cca746663d5c45094e91d190602001610d85565b60c9547f2cf8b99554b63927353c04c2e1cee7fe05352aeb3c52d2576a2f7fd7fb8e180a906116d1906001600160a01b0316303361144d565b610c3c610bf136849003840184614786565b60c9547f568cc693d84eb1901f8bcecba154cbdef23ca3cf67efc0a0b698528a06c660f79061171c906001600160a01b0316303361144d565b610c3c61172e36849003840184614ac0565b612d16565b5f818152610165602052604081206003015461176557604051630853c2a360e41b8152600481018390526024016109a9565b5f828152610165602052604090205460ff161561178457506001919050565b61090d82612df7565b611795613bb7565b5f8281526101656020908152604091829020825160e08082018552825460ff9081161515835285516101008101875260018086018054835260028701546001600160401b03808216858b0152600160401b90910416988301989098526003860154606083015260048601546080830152600586015460a0830152600686015460c083015260078601549497959688019591949193850192919091169081111561184057611840613daf565b600181111561185157611851613daf565b9052508152604080516008840180546020818102840185018552838101828152950194929391928492909184918401828280156118ab57602002820191905f5260205f20905b815481526020019060010190808311611897575b505050505081525050815260200160098201805480602002602001604051908101604052809291908181526020015f905b828210156119bd575f848152602090819020604080516060810182526003860290920180546001600160a01b031683526001810154938301939093526002830180549293929184019161192e9061463d565b80601f016020809104026020016040519081016040528092919081815260200182805461195a9061463d565b80156119a55780601f1061197c576101008083540402835291602001916119a5565b820191905f5260205f20905b81548152906001019060200180831161198857829003601f168201915b505050505081525050815260200190600101906118dc565b50505090825250600a820154602080830191909152604080518082018252600b850180546001600160a01b038116835292909401939092909190830190600160a01b900460ff166001811115611a1557611a15613daf565b6001811115611a2657611a26613daf565b9052508152600c919091015460209091015292915050565b611a46613c13565b6040805180820190915260fb80546001600160a01b03811683526020830190600160a01b900460ff166001811115611a8057611a80613daf565b6001811115611a9157611a91613daf565b905250919050565b5f818152610165602052604081206003015461178457604051630853c2a360e41b8152600481018390526024016109a9565b5f604051631bebc11560e01b815260040160405180910390fd5b611aed613c13565b6040805180820190915260fb80546001600160a01b03811683525f9291906020830190600160a01b900460ff166001811115611b2b57611b2b613daf565b6001811115611b3c57611b3c613daf565b90525080519091506001600160a01b0316611b82576040518060400160405280611b6e60c9546001600160a01b031690565b6001600160a01b031681526020015f905290505b919050565b60c9545f907f8c433a4cd6b51969eca37f974940894297b9fcf4b282a213fea5cd8f85289c9090611bc2906001600160a01b0316303361144d565b611c238688604051602001611bd8929190614b01565b60408051601f198184030181528282528051602091820120468483015243848401523060608501526080808501919091528251808503909101815260a0909301909152815191012090565b5f8181526101656020526040902060038101549193509015611c5b576040516312dba68f60e01b8152600481018490526024016109a9565b611c6488612e8d565b5f8481526101676020908152604090912080546001600160a01b0319166001600160a01b0393909316929092179091558451611ca79190860181019086016148c7565b600a820155611cb686866128d3565b909650945060015f611cc888886129c3565b61015f546040516317757cc360e01b81529192505f916001600160a01b03909116906317757cc390611cfe90859060040161491e565b602060405180830381865afa158015611d19573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d3d91906148c7565b61010083018190529050611d518682613040565b61015f5461016054611d70916001600160a01b039182169116836130c3565b61015f5460405163057da3dd60e01b81525f916001600160a01b03169063057da3dd90611da190869060040161491e565b5f604051808303815f875af1158015611dbc573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611de39190810190614bd5565b50604080516003808252608082019092529192506020820160608036833750508151611e189260088901925060200190613c2c565b50604051806101000160405280600381526020018b6001600160401b031681526020018a6001600160401b031681526020016001611e54613151565b611e5e919061481c565b81526101635460208201526101645463ffffffff8082166040840152640100000000909104166060820152608001856001811115611e9e57611e9e613daf565b905280516001808801918255602083015160028901805460408601516001600160401b03908116600160401b026fffffffffffffffffffffffffffffffff19909216931692909217919091179055606083015160038901556080830151600489015560a0830151600589015560c0830151600689015560e08301516007890180549192909160ff1916908381811115611f3957611f39613daf565b0217905550905050611f49611ae5565b8051600b870180546001600160a01b031981166001600160a01b0390931692831782556020840151919283916001600160a81b03191617600160a01b836001811115611f9757611f97613daf565b02179055505050600c850155505f9150505b87518110156120375781600901888281518110611fc857611fc8614d3a565b6020908102919091018101518254600180820185555f94855293839020825160039092020180546001600160a01b0319166001600160a01b039092169190911781559181015192820192909255604082015160028201906120299082614d4e565b505050806001019050611fa9565b50336001600160a01b0316837fa6c1f8f4276dc3f243459e13b557c84e8f4e90b2e09070bad5f6909cee687c9288888c8c87600a015460405161207e959493929190614e08565b60405180910390a3505095945050505050565b6040805160208101909152606081525f82815261016560205260409020600301546120d257604051630853c2a360e41b8152600481018390526024016109a9565b5f82815261016560205260409020805460ff166121795761016854600c82015460405163527350af60e01b815260048101919091525f916201000090046001600160a01b03169063527350af906024015f60405180830381865afa15801561213c573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526121639190810190614a2e565b6040805160208101909152908152949350505050565b6040805160088301805460208181028401850185528301818152929391928492909184918401828280156121ca57602002820191905f5260205f20905b8154815260200190600101908083116121b6575b505050505081525050915050919050565b60c9547f4707e94b25cfce1a7c363508fbb838c35864388ad77284b248282b9746982b9b90612214906001600160a01b0316303361144d565b61225283838080601f0160208091040260200160405190810160405280939291908181526020018383808284375f920191909152506131cd92505050565b505050565b5f818152610165602052604090206003015461228957604051630853c2a360e41b8152600481018290526024016109a9565b5f818152610165602052604090206002810154600160401b90046001600160401b03164210156122cf57604051639fefd0f160e01b8152600481018390526024016109a9565b61016854600c82015460405163527350af60e01b815260048101919091525f916201000090046001600160a01b03169063527350af906024015f60405180830381865afa158015612322573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526123499190810190614a2e565b90506123558382613229565b61237557604051639fefd0f160e01b8152600481018490526024016109a9565b805161238a9060088401906020840190613c2c565b50815460ff19166001178255600b820154600983018054604080516020808402820181019092528281526124cc946001600160a01b031693889391929091905f9084015b828210156124af575f848152602090819020604080516060810182526003860290920180546001600160a01b03168352600181015493830193909352600283018054929392918401916124209061463d565b80601f016020809104026020016040519081016040528092919081815260200182805461244c9061463d565b80156124975780601f1061246e57610100808354040283529160200191612497565b820191905f5260205f20905b81548152906001019060200180831161247a57829003601f168201915b505050505081525050815260200190600101906123ce565b50505050600a860154600b870154600160a01b900460ff1661330c565b505060405183907f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f905f90a2505050565b5f6001600160e01b03198216634a06561b60e11b148061090d575061090d82613493565b5f54610100900460ff166125475760405162461bcd60e51b81526004016109a990614e5d565b610e54816134d2565b6064816040015163ffffffff16111561259157604080820151905163cc80c19560e01b81526064600482015263ffffffff90911660248201526044016109a9565b61259d6001606461481c565b816060015163ffffffff1611156125e7576125ba6001606461481c565b606082015160405163cc80c19560e01b8152600481019290925263ffffffff1660248201526044016109a9565b805161016281905560208083015161016381905560408085015161016480546060808901516080808b015163ffffffff96871667ffffffffffffffff19909516851764010000000097909316968702929092176fffffffffffffffff00000000000000001916600160401b6001600160401b039093169283021790945585519889529688019590955292860192909252918401919091528201527f7aa040f09767ff6a0bbf5ff522b1782e1d8640c48ed679e28171e7290d69ed4e9060a0015b60405180910390a150565b6040516001600160a01b03831660248201526044810182905261225290849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915261351a565b5f5160206154305f395f51905f52546001600160a01b031690565b60c9547f821b6e3a557148015a918c89e5d092e878a69854a2d1a410635f771bd5a8a3f590610c3c906001600160a01b0316303361144d565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161561279c57612252836135ed565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156127f6575060408051601f3d908101601f191682019092526127f3918101906148c7565b60015b6128595760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084016109a9565b5f5160206154305f395f51905f5281146128c75760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b60648201526084016109a9565b50612252838383613688565b5f80426001600160401b03851682036128ee57809250612937565b849250806001600160401b0316836001600160401b0316101561293757604051631332703d60e21b81526001600160401b038083166004830152841660248201526044016109a9565b610164545f9061295790600160401b90046001600160401b031685614ea8565b9050846001600160401b03165f03612971578092506129ba565b849250806001600160401b0316836001600160401b031610156129ba57604051631332703d60e21b81526001600160401b038083166004830152841660248201526044016109a9565b50509250929050565b6129cb613c75565b610163545f6129d86136ac565b9050808210156129e6578091505b610161546040515f91612a16916001600160a01b0390911690859060039060019086906002908290602001614ec7565b60408051601f19818403018152610120830190915261016854909250819060ff166003811115612a4857612a48613daf565b81526040805180820182526001600160401b038a811682528916602080830191909152830152610168546201000081046001600160a01b031691830191909152610100900460ff1660608201526101698054608090920191612aa99061463d565b80601f0160208091040260200160405190810160405280929190818152602001828054612ad59061463d565b8015612b205780601f10612af757610100808354040283529160200191612b20565b820191905f5260205f20905b815481529060010190602001808311612b0357829003601f168201915b50505091835250506020808201849052610160546001600160a01b0390811660408085019190915261015f548151635360df2d60e01b81529151606090950194921692635360df2d926004808401938290030181865afa158015612b86573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612baa91906148c7565b81525f196020909101529695505050505050565b604051637ef7c88360e11b81526001600160a01b0387169063fdef910690612bf29088908890889088908890600401614f18565b602060405180830381865afa158015612c0d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c319190614f5a565b612c7057604051630cb6f8ed60e21b81526001600160a01b038088166004830152808716602483015285166044820152606481018490526084016109a9565b505050505050565b5f82600181518110612c8c57612c8c614d3a565b602002602001015182612c9f9190614f73565b835f81518110612cb157612cb1614d3a565b6020026020010151836064612cc6919061481c565b612cd09190614f73565b119392505050565b6040516001600160a01b0380851660248301528316604482015260648101829052612d109085906323b872dd60e01b906084016126de565b50505050565b8051612d32906001600160a01b0316632a4f53ad60e11b61374d565b8015612d535750600181602001516001811115612d5157612d51613daf565b145b15612d73578060405163266d0fb960e01b81526004016109a991906143b2565b805160fb80546001600160a01b039092166001600160a01b031983168117825560208401518493909183916001600160a81b03191617600160a01b836001811115612dc057612dc0613daf565b02179055509050507f88e879ae0d71faf3aa708f2978daccb99b95243615dc104835b8c5a21c884ae6816040516126a791906143b2565b610168545f8281526101656020526040808220600c0154905163527350af60e01b8152600481019190915290918291620100009091046001600160a01b03169063527350af906024015f60405180830381865afa158015612e5a573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612e819190810190614a2e565b905061135d8382613229565b5f8151606003612f71575f5f83806020019051810190612ead9190614f9b565b5091509150612eb93390565b6001600160a01b0316826001600160a01b031603612f6e576040516318feeb1560e31b8152600481018290526001600160a01b0383169063c7f758a8906024015f60405180830381865afa158015612f13573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052612f3a9190810190615114565b60c0015192506001600160a01b038316612f67576040516361f186b360e11b815260040160405180910390fd5b5050919050565b50505b506101615433905f906001600160a01b0316633a46b1a8836001612f93613151565b612f9d919061481c565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381865afa158015612fe4573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061300891906148c7565b6101625490915081101561303a57604051633aae64d160e21b81526001600160a01b03831660048201526024016109a9565b50919050565b5f82815261016760209081526040808320546001600160a01b031680845261016690925290912054828110156130a25760405163021d4d7760e31b81526001600160a01b038316600482015260248101849052604481018290526064016109a9565b6001600160a01b039091165f90815261016660205260409020919003905550565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b1790526131148482613768565b612d10576040516001600160a01b03841660248201525f604482015261314790859063095ea7b360e01b906064016126de565b612d10848261351a565b61016154604080516324776b7d60e21b815290515f926001600160a01b0316916391ddadf49160048083019260209291908290030181865afa9250505080156131b7575060408051601f3d908101601f191682019092526131b49181019061520a565b60015b6131c057504390565b65ffffffffffff16919050565b7f47ff9796f72d439c6e5c30a24b9fad985a00c85a9f2258074c400a94f8746b00806131f98382614d4e565b507fbb39ebb37e60fb5d606ffdb749d2336e56b88e6c88c4bd6513b308f643186eed82604051610c339190613ea6565b5f82815261016560205260408120805460ff161561324a575f91505061090d565b5f805b84518110156132855784818151811061326857613268614d3a565b60200260200101518261327b91906148e9565b915060010161324d565b505f6132978360010160020154610fbd565b9050805f036132ab575f935050505061090d565b60058301545f906132bd908390614f73565b60646132c76136ac565b6132d19086614f73565b6132db9190614f73565b10159050806132f0575f94505050505061090d565b613301868560010160050154612c78565b979650505050505050565b60605f600183600181111561332357613323613daf565b03613411575f6060886001600160a01b031688888860405160240161334a9392919061522f565b60408051601f198184030181529181526020820180516001600160e01b03166331c6fcc960e21b1790525161337f9190615257565b5f60405180830381855af49150503d805f81146133b7576040519150601f19603f3d011682016040523d82523d5f602084013e6133bc565b606091505b509092509050816133f0578051156133d75780518082602001fd5b6040516318cecad560e01b815260040160405180910390fd5b80806020019051810190613404919061526d565b9094509250613489915050565b6040516331c6fcc960e21b81526001600160a01b0388169063c71bf324906134419089908990899060040161522f565b5f604051808303815f875af115801561345c573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052613483919081019061526d565b90925090505b9550959350505050565b5f6001600160e01b0319821663368d719960e21b14806134c357506001600160e01b03198216633f4644d160e21b145b8061090d575061090d82613809565b5f54610100900460ff166134f85760405162461bcd60e51b81526004016109a990614e5d565b60c980546001600160a01b0319166001600160a01b0392909216919091179055565b5f61356e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661388d9092919063ffffffff16565b905080515f148061358e57508080602001905181019061358e9190614f5a565b6122525760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b60648201526084016109a9565b6001600160a01b0381163b61365a5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016109a9565b5f5160206154305f395f51905f5280546001600160a01b0319166001600160a01b0392909216919091179055565b613691836138a3565b5f8251118061369d5750805b1561225257612d1083836138e2565b610161546040805163313ce56760e01b815290515f926001600160a01b03169163313ce5679160048083019260209291908290030181865afa925050508015613712575060408051601f3d908101601f1916820190925261370f91810190615326565b60015b61371c5750600190565b60018160ff161161372e576001613747565b61373c600160ff831661481c565b61374790600a615424565b91505090565b5f61375783613907565b801561135d575061135d8383613939565b5f5f5f846001600160a01b0316846040516137839190615257565b5f604051808303815f865af19150503d805f81146137bc576040519150601f19603f3d011682016040523d82523d5f602084013e6137c1565b606091505b50915091508180156137eb5750805115806137eb5750808060200190518101906137eb9190614f5a565b801561380057506001600160a01b0385163b15155b95945050505050565b5f6001600160e01b0319821663041de68360e41b148061383857506001600160e01b03198216621574e360e91b145b8061385357506001600160e01b031982166352d1902d60e01b145b8061386e57506001600160e01b0319821663afc5b82360e01b145b8061090d57506301ffc9a760e01b6001600160e01b031983161461090d565b606061389b84845f856139bc565b949350505050565b6138ac816135ed565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b606061135d838360405180606001604052806027815260200161545060279139613a88565b5f613919826301ffc9a760e01b613939565b801561090d5750613932826001600160e01b0319613939565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b17815282515f9392849283928392918391908a617530fa92503d91505f5190508280156139a9575060208210155b8015613301575015159695505050505050565b606082471015613a1d5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b60648201526084016109a9565b5f5f866001600160a01b03168587604051613a389190615257565b5f6040518083038185875af1925050503d805f8114613a72576040519150601f19603f3d011682016040523d82523d5f602084013e613a77565b606091505b509150915061330187838387613afc565b60605f5f856001600160a01b031685604051613aa49190615257565b5f60405180830381855af49150503d805f8114613adc576040519150601f19603f3d011682016040523d82523d5f602084013e613ae1565b606091505b5091509150613af286838387613afc565b9695505050505050565b60608315613b6a5782515f03613b63576001600160a01b0385163b613b635760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016109a9565b508161389b565b61389b8383815115613b7f5781518083602001fd5b8060405162461bcd60e51b81526004016109a99190613ea6565b60405180606001604052806003906020820280368337509192915050565b6040518060e001604052805f15158152602001613bd2613cc5565b8152602001613bed6040518060200160405280606081525090565b8152602001606081526020015f8152602001613c07613c13565b81526020015f81525090565b604080518082019091525f80825260208201905b905290565b828054828255905f5260205f20908101928215613c65579160200282015b82811115613c65578251825591602001919060010190613c4a565b50613c71929150613d1f565b5090565b604080516101208101909152805f8152602001613c90613d33565b81525f60208201819052604082018190526060808301819052608083015260a0820181905260c0820181905260e09091015290565b6040518061010001604052805f81526020015f6001600160401b031681526020015f6001600160401b031681526020015f81526020015f81526020015f81526020015f81526020015f6001811115613c2757613c27613daf565b5b80821115613c71575f8155600101613d20565b60405180604001604052806002906020820280368337509192915050565b5f60208284031215613d61575f5ffd5b81356001600160e01b03198116811461135d575f5ffd5b5f60208284031215613d88575f5ffd5b81356001600160401b03811115613d9d575f5ffd5b8201610180818503121561135d575f5ffd5b634e487b7160e01b5f52602160045260245ffd5b60048110613dd357613dd3613daf565b9052565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b613e0f8185613dc3565b60ff83166020820152606060408201525f6138006060830184613dd7565b6060810181835f5b6003811015613e5757815160ff16835260209283019290910190600101613e35565b50505092915050565b5f60208284031215613e70575f5ffd5b5035919050565b6001600160a01b0381168114610e54575f5ffd5b5f60208284031215613e9b575f5ffd5b813561135d81613e77565b602081525f61135d6020830184613dd7565b60038110610e5457610e54613daf565b60208101613ed583613eb8565b91905290565b634e487b7160e01b5f52604160045260245ffd5b604051606081016001600160401b0381118282101715613f1157613f11613edb565b60405290565b604080519081016001600160401b0381118282101715613f1157613f11613edb565b6040516101e081016001600160401b0381118282101715613f1157613f11613edb565b60405161012081016001600160401b0381118282101715613f1157613f11613edb565b604051601f8201601f191681016001600160401b0381118282101715613fa757613fa7613edb565b604052919050565b5f6001600160401b03821115613fc757613fc7613edb565b50601f01601f191660200190565b5f82601f830112613fe4575f5ffd5b8135613ff7613ff282613faf565b613f7f565b81815284602083860101111561400b575f5ffd5b816020850160208301375f918101602001919091529392505050565b5f5f60408385031215614038575f5ffd5b823561404381613e77565b915060208301356001600160401b0381111561405d575f5ffd5b61406985828601613fd5565b9150509250929050565b6001600160401b0381168114610e54575f5ffd5b8035611b8281614073565b5f5f604083850312156140a3575f5ffd5b82356140ae81614073565b915060208301356140be81614073565b809150509250929050565b60048110610e54575f5ffd5b60ff81168114610e54575f5ffd5b5f5f83601f8401126140f3575f5ffd5b5081356001600160401b03811115614109575f5ffd5b602083019150836020828501011115614120575f5ffd5b9250929050565b5f5f5f5f6060858703121561413a575f5ffd5b8435614145816140c9565b93506020850135614155816140d5565b925060408501356001600160401b0381111561416f575f5ffd5b61417b878288016140e3565b95989497509550505050565b5f60a0828403128015614198575f5ffd5b509092915050565b5f6040828403128015614198575f5ffd5b60028110610e5457610e54613daf565b805182526001600160401b0360208201511660208301526001600160401b036040820151166040830152606081015160608301526080810151608083015260a081015160a083015260c081015160c083015260e0810151614221816141b1565b8060e0840152505050565b8051602080845281518482018190525f9290910190829060408601905b8083101561426c5783518252602082019150602084019350600183019250614249565b5095945050505050565b5f82825180855260208501945060208160051b830101602085015f5b838110156142ee57848303601f19018852815180516001600160a01b03168452602080820151908501526040908101516060918501829052906142d790850182613dd7565b6020998a0199909450929092019150600101614292565b50909695505050505050565b80516001600160a01b031682526020810151614315816141b1565b806020840152505050565b602081528151151560208201525f602083015161434060408401826141c1565b5060408301516101e061014084015261435d61020084018261422c565b90506060840151601f198483030161016085015261437b8282614276565b915050608084015161018084015260a084015161439c6101a08501826142fa565b5060c08401516101e08401528091505092915050565b6040810161090d82846142fa565b5f6001600160401b038211156143d8576143d8613edb565b5060051b60200190565b5f5f5f5f5f60a086880312156143f6575f5ffd5b85356001600160401b0381111561440b575f5ffd5b61441788828901613fd5565b95505060208601356001600160401b03811115614432575f5ffd5b8601601f81018813614442575f5ffd5b8035614450613ff2826143c0565b8082825260208201915060208360051b85010192508a831115614471575f5ffd5b602084015b838110156145065780356001600160401b03811115614493575f5ffd5b85016060818e03601f190112156144a8575f5ffd5b6144b0613eef565b60208201356144be81613e77565b81526040820135602082015260608201356001600160401b038111156144e2575f5ffd5b6144f18f602083860101613fd5565b60408301525084525060209283019201614476565b5096506145199250505060408701614087565b925061452760608701614087565b915060808601356001600160401b03811115614541575f5ffd5b61454d88828901613fd5565b9150509295509295909350565b602081525f61135d602083018461422c565b5f5f6020838503121561457d575f5ffd5b82356001600160401b03811115614592575f5ffd5b61459e858286016140e3565b90969095509350505050565b5f602082840312156145ba575f5ffd5b815161135d81613e77565b5f602082840312156145d5575f5ffd5b813561135d816140c9565b5f602082840312156145f0575f5ffd5b813561135d816140d5565b5f5f8335601e19843603018112614610575f5ffd5b8301803591506001600160401b03821115614629575f5ffd5b602001915036819003821315614120575f5ffd5b600181811c9082168061465157607f821691505b60208210810361303a57634e487b7160e01b5f52602260045260245ffd5b601f82111561225257805f5260205f20601f840160051c810160208510156146945750805b601f840160051c820191505b818110156146b3575f81556001016146a0565b5050505050565b6001600160401b038311156146d1576146d1613edb565b6146e5836146df835461463d565b8361466f565b5f601f841160018114614716575f85156146ff5750838201355b5f19600387901b1c1916600186901b1783556146b3565b5f83815260208120601f198716915b828110156147455786850135825560209485019460019092019101614725565b5086821015614761575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b803563ffffffff81168114611b82575f5ffd5b5f60a0828403128015614797575f5ffd5b5060405160a081016001600160401b03811182821017156147ba576147ba613edb565b604090815283358252602080850135908301526147d8908401614773565b60408201526147e960608401614773565b606082015260808301356147fc81614073565b60808201529392505050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561090d5761090d614808565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b5f602082840312156148d7575f5ffd5b5051919050565b8051611b8281613e77565b8082018082111561090d5761090d614808565b805f5b6002811015612d105781518452602093840193909101906001016148ff565b60208152614930602082018351613dc3565b5f602083015161494360408401826148fc565b5060408301516001600160a01b0316608083810191909152606084015160ff1660a084015283015161014060c0840152614981610160840182613dd7565b905060a0840151601f198483030160e085015261499e8282613dd7565b91505060c08401516149bc6101008501826001600160a01b03169052565b5060e084015161012084015261010090930151610140909201919091525090565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b614a0f8186613dc3565b60ff84166020820152606060408201525f613af26060830184866149dd565b5f60208284031215614a3e575f5ffd5b81516001600160401b03811115614a53575f5ffd5b8201601f81018413614a63575f5ffd5b8051614a71613ff2826143c0565b8082825260208201915060208360051b850101925086831115614a92575f5ffd5b6020840193505b82841015613af2578351825260209384019390910190614a99565b60028110610e54575f5ffd5b5f6040828403128015614ad1575f5ffd5b50614ada613f17565b8235614ae581613e77565b81526020830135614af581614ab4565b60208201529392505050565b604081525f614b136040830185614276565b82810360208401526138008185613dd7565b8051611b82816140c9565b5f82601f830112614b3f575f5ffd5b614b47613f17565b806040840185811115614b58575f5ffd5b845b81811015614b72578051845260209384019301614b5a565b509095945050505050565b8051611b82816140d5565b5f82601f830112614b97575f5ffd5b8151614ba5613ff282613faf565b818152846020838601011115614bb9575f5ffd5b8160208501602083015e5f918101602001919091529392505050565b5f5f60408385031215614be6575f5ffd5b825160208401519092506001600160401b03811115614c03575f5ffd5b83016102008186031215614c15575f5ffd5b614c1d613f39565b81518152614c2d60208301614b25565b602082015260408281015190820152614c498660608401614b30565b606082015260a08201516080820152614c6460c083016148de565b60a0820152614c7560e08301614b7d565b60c08201526101008201516001600160401b03811115614c93575f5ffd5b614c9f87828501614b88565b60e083015250614cb261012083016148de565b610100820152614cc561014083016148de565b61012082015261016082810151610140830152610180830151908201526101a08201516001600160401b03811115614cfb575f5ffd5b614d0787828501614b88565b61018083015250614d1b6101c083016148de565b6101a08201526101e091909101516101c0820152919491935090915050565b634e487b7160e01b5f52603260045260245ffd5b81516001600160401b03811115614d6757614d67613edb565b614d7b81614d75845461463d565b8461466f565b6020601f821160018114614dad575f8315614d965750848201515b5f19600385901b1c1916600184901b1784556146b3565b5f84815260208120601f198516915b82811015614ddc5787850151825560209485019460019092019101614dbc565b5084821015614df957868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b6001600160401b03861681526001600160401b038516602082015260a060408201525f614e3860a0830186613dd7565b8281036060840152614e4a8186614276565b9150508260808301529695505050505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160401b03818116838216019081111561090d5761090d614808565b6001600160a01b0388168152602081018790526040810186905260e08101614eee866141b1565b856060830152846080830152614f0384613eb8565b60a082019390935260c0015295945050505050565b6001600160a01b03868116825285166020820152604081018490526080606082018190525f9061330190830184866149dd565b80518015158114611b82575f5ffd5b5f60208284031215614f6a575f5ffd5b61135d82614f4b565b808202811582820484141761090d5761090d614808565b805161ffff81168114611b82575f5ffd5b5f5f5f60608486031215614fad575f5ffd5b8351614fb881613e77565b60208501519093509150614fce60408501614f8a565b90509250925092565b80516fffffffffffffffffffffffffffffffff81168114611b82575f5ffd5b8051611b8281614073565b5f82601f830112615010575f5ffd5b815161501e613ff2826143c0565b8082825260208201915060208360051b86010192508583111561503f575f5ffd5b602085015b8381101561426c5780516001600160401b03811115615061575f5ffd5b86016060818903601f19011215615076575f5ffd5b61507e613eef565b602082015161508c81613e77565b81526040820151602082015260608201516001600160401b038111156150b0575f5ffd5b6150bf8a602083860101614b88565b60408301525084525060209283019201615044565b5f604082840312156150e4575f5ffd5b6150ec613f17565b905081516150f981613e77565b8152602082015161510981614ab4565b602082015292915050565b5f60208284031215615124575f5ffd5b81516001600160401b03811115615139575f5ffd5b8201610140818503121561514b575f5ffd5b615153613f5c565b61515c82614fd7565b815261516a60208301614ff6565b602082015261517b60408301614f8a565b604082015261518c60608301614f8a565b606082015261519d60808301614f4b565b60808201526151ae60a08301614f4b565b60a08201526151bf60c083016148de565b60c082015260e08201516001600160401b038111156151dc575f5ffd5b6151e886828501615001565b60e0830152506151fc8561010084016150d4565b610100820152949350505050565b5f6020828403121561521a575f5ffd5b815165ffffffffffff8116811461135d575f5ffd5b838152606060208201525f6152476060830185614276565b9050826040830152949350505050565b5f82518060208501845e5f920191825250919050565b5f5f6040838503121561527e575f5ffd5b82516001600160401b03811115615293575f5ffd5b8301601f810185136152a3575f5ffd5b80516152b1613ff2826143c0565b8082825260208201915060208360051b8501019250878311156152d2575f5ffd5b602084015b838110156153125780516001600160401b038111156152f4575f5ffd5b6153038a602083890101614b88565b845250602092830192016152d7565b506020969096015195979596505050505050565b5f60208284031215615336575f5ffd5b815161135d816140d5565b6001815b600184111561537c5780850481111561536057615360614808565b600184161561536e57908102905b60019390931c928002615345565b935093915050565b5f826153925750600161090d565b8161539e57505f61090d565b81600181146153b457600281146153be576153da565b600191505061090d565b60ff8411156153cf576153cf614808565b50506001821b61090d565b5060208310610133831016604e8410600b84101617156153fd575081810a61090d565b6154095f198484615341565b805f190482111561541c5761541c614808565b029392505050565b5f61135d838361538456fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122015e80884cf20b8c296ee0a7a5a677a924584fd3de549205facb109f3378417b864736f6c634300081d0033004e59b44847b379578588920ca78fbf26c0b4956c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e3f696e746572666f6c642d63726973702d7631000000000000000000000000000060c060405234801561000f575f5ffd5b50604051611dff380380611dff83398101604081905261002e91610044565b6001600160a01b0316608081905260a052610071565b5f60208284031215610054575f5ffd5b81516001600160a01b038116811461006a575f5ffd5b9392505050565b60805160a051611d366100c95f395f818160b6015281816104c9015281816105b7015281816106a60152818161079501528181610b5f01528181610cfe0152610ea401525f818161011a0152610a330152611d365ff3fe608060405234801561000f575f5ffd5b5060043610610085575f3560e01c80635c60da1b116100585780635c60da1b146101185780639cb0a1241461013e578063a8a9c29e1461015e578063f10832f11461017f575f5ffd5b806301ffc9a7146100895780630d405b7b146100b15780631c5d4013146100f05780632ae9c60014610103575b5f5ffd5b61009c610097366004611067565b6101a0565b60405190151581526020015b60405180910390f35b6100d87f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100a8565b61009c6100fe3660046110ac565b6101f0565b61010b6103fe565b6040516100a891906110c7565b7f00000000000000000000000000000000000000000000000000000000000000006100d8565b61015161014c366004611110565b610427565b6040516100a891906111c8565b61017161016c366004611210565b61090c565b6040516100a892919061132f565b61019261018d3660046113f2565b610944565b6040516100a892919061147f565b5f6001600160e01b0319821663099718b560e41b14806101cf57506001600160e01b03198216621574e360e91b145b806101ea57506301ffc9a760e01b6001600160e01b03198316145b92915050565b604080515f602480830182905283518084039091018152604490920183526020820180516001600160e01b0316632394e7a360e21b1790529151829182916001600160a01b03861691610242916114a2565b5f60405180830381855afa9150503d805f811461027a576040519150601f19603f3d011682016040523d82523d5f602084013e61027f565b606091505b50604080513060248083019190915282518083039091018152604490910182526020810180516001600160e01b03166309ab24eb60e41b17905290519294509092505f9182916001600160a01b038816916102da91906114a2565b5f60405180830381855afa9150503d805f8114610312576040519150601f19603f3d011682016040523d82523d5f602084013e610317565b606091505b50604080513060248201525f604480830182905283518084039091018152606490920183526020820180516001600160e01b0316630748d63560e31b17905291519395509193509182916001600160a01b038a169161037691906114a2565b5f60405180830381855afa9150503d805f81146103ae576040519150601f19603f3d011682016040523d82523d5f602084013e6103b3565b606091505b50915091508580156103c6575084516020145b80156103cf5750835b80156103dc575082516020145b80156103e55750815b80156103f2575080516020145b98975050505050505050565b61040661103c565b506040805160608101825260018152600460208201525f9181019190915290565b60408051600580825260c08201909252606091816020015b6040805160a0810182525f808252602080830182905292820181905260608201819052608082015282525f1990920191018161043f5750506040805160a081019091526001815290915060208082019061049b908501856110ac565b6001600160a01b03168152602001846001600160a01b031681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638cb750596040518163ffffffff1660e01b8152600401602060405180830381865afa158015610523573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061054791906114b8565b815250815f8151811061055c5761055c6114cf565b60209081029190910101526040805160a081019091528060018152602090810190610589908501856110ac565b6001600160a01b03168152602001846001600160a01b031681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663eed7a9be6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610611573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061063591906114b8565b8152508160018151811061064b5761064b6114cf565b60209081029190910101526040805160a081019091528060018152602090810190610678908501856110ac565b6001600160a01b031681526020016001600160a01b03801681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166311ce24386040518163ffffffff1660e01b8152600401602060405180830381865afa158015610700573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061072491906114b8565b8152508160028151811061073a5761073a6114cf565b60209081029190910101526040805160a081019091528060018152602090810190610767908501856110ac565b6001600160a01b03168152602001846001600160a01b031681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e306bee76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107ef573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061081391906114b8565b81525081600481518110610829576108296114cf565b60209081029190910101526040805160a081019091528060018152602001846001600160a01b03168152602001835f01602081019061086891906110ac565b6001600160a01b031681526020015f6001600160a01b03168152602001846001600160a01b0316630729d0546040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e591906114b8565b815250816003815181106108fb576108fb6114cf565b602002602001018190525092915050565b606061092b604051806040016040528060608152602001606081525090565b60405163a112810160e01b815260040160405180910390fd5b5f610962604051806040016040528060608152602001606081525090565b5f5f5f858060200190518101906109799190611613565b919450925090506001600160a01b0382163b6109b8576040516318aca2db60e01b81526001600160a01b03831660048201526024015b60405180910390fd5b6109c182610f57565b6109e95760405163fa8925f160e01b81526001600160a01b03831660048201526024016109af565b6109f2826101f0565b610a1a57604051631cfe832160e11b81526001600160a01b03831660048201526024016109af565b6001600160a01b03878116845282166020840152610a917f000000000000000000000000000000000000000000000000000000000000000084604051602401610a63919061172d565b60408051601f198184030181529190526020810180516001600160e01b031662d7f74f60e21b179052611001565b945060038115610aa957610aa6600282611817565b90505b5f8167ffffffffffffffff811115610ac357610ac361135c565b604051908082528060200260200182016040528015610b1a57816020015b6040805160a0810182525f808252602080830182905292820181905260608201819052608082015282525f19909201910181610ae15790505b506040805160a08101909152909150805f8152602001886001600160a01b031681526020018a6001600160a01b031681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316638cb750596040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb9573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bdd91906114b8565b815250815f81518110610bf257610bf26114cf565b60209081029190910101526040805160a08101909152805f8152602001886001600160a01b031681526020018a6001600160a01b031681526020015f6001600160a01b03168152602001886001600160a01b031663eed7a9be6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c78573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c9c91906114b8565b81525081600181518110610cb257610cb26114cf565b60209081029190910101526040805160a08101909152805f8152602001886001600160a01b031681526020018a6001600160a01b031681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e306bee76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d58573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d7c91906114b8565b81525081600281518110610d9257610d926114cf565b60200260200101819052508215610f44576040805160a08101909152805f81526020018a6001600160a01b03168152602001886001600160a01b031681526020015f6001600160a01b031681526020018a6001600160a01b0316630729d0546040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e1e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e4291906114b8565b81525081600381518110610e5857610e586114cf565b60209081029190910101526040805160a08101909152805f8152602001886001600160a01b031681526020016001600160a01b03801681526020015f6001600160a01b031681526020017f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166311ce24386040518163ffffffff1660e01b8152600401602060405180830381865afa158015610efe573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f2291906114b8565b81525081600481518110610f3857610f386114cf565b60200260200101819052505b6020860152509396929550919350505050565b6040513060248201525f90819081906001600160a01b0385169060440160408051601f198184030181529181526020820180516001600160e01b03166370a0823160e01b17905251610fa991906114a2565b5f60405180830381855afa9150503d805f8114610fe1576040519150601f19603f3d011682016040523d82523d5f602084013e610fe6565b606091505b5091509150818015610ff9575080516020145b949350505050565b5f82826040516110109061105a565b61101b929190611836565b604051809103905ff080158015611034573d5f5f3e3d5ffd5b509392505050565b60405180606001604052806003906020820280368337509192915050565b6104a78061185a83390190565b5f60208284031215611077575f5ffd5b81356001600160e01b03198116811461108e575f5ffd5b9392505050565b6001600160a01b03811681146110a9575f5ffd5b50565b5f602082840312156110bc575f5ffd5b813561108e81611095565b6060810181835f5b60038110156110f157815160ff168352602092830192909101906001016110cf565b50505092915050565b5f6060828403121561110a575f5ffd5b50919050565b5f5f60408385031215611121575f5ffd5b823561112c81611095565b9150602083013567ffffffffffffffff811115611147575f5ffd5b611153858286016110fa565b9150509250929050565b634e487b7160e01b5f52602160045260245ffd5b5f8151600381106111845761118461115d565b8352506020818101516001600160a01b0390811691840191909152604080830151821690840152606080830151909116908301526080908101519082015260a00190565b602080825282518282018190525f918401906040840190835b81811015611205576111f4838551611171565b6020949094019392506001016111e1565b509095945050505050565b5f5f5f60608486031215611222575f5ffd5b833561122d81611095565b9250602084013561ffff81168114611243575f5ffd5b9150604084013567ffffffffffffffff81111561125e575f5ffd5b61126a868287016110fa565b9150509250925092565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b8051604080845281519084018190525f9160200190829060608601905b808310156112ea5783516001600160a01b0316825260209384019360019390930192909101906112bf565b506020858101518783038883015280518084529082019450910191505f905b808210156112055761131c838551611171565b9250602084019350600182019150611309565b604081525f6113416040830185611274565b828103602084015261135381856112a2565b95945050505050565b634e487b7160e01b5f52604160045260245ffd5b604051610100810167ffffffffffffffff811182821017156113945761139461135c565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156113c3576113c361135c565b604052919050565b5f67ffffffffffffffff8211156113e4576113e461135c565b50601f01601f191660200190565b5f5f60408385031215611403575f5ffd5b823561140e81611095565b9150602083013567ffffffffffffffff811115611429575f5ffd5b8301601f81018513611439575f5ffd5b803561144c611447826113cb565b61139a565b818152866020838501011115611460575f5ffd5b816020840160208301375f602083830101528093505050509250929050565b6001600160a01b03831681526040602082018190525f90610ff9908301846112a2565b5f82518060208501845e5f920191825250919050565b5f602082840312156114c8575f5ffd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b80516114ee81611095565b919050565b8051600481106114ee575f5ffd5b805160ff811681146114ee575f5ffd5b5f82601f830112611520575f5ffd5b815161152e611447826113cb565b818152846020838601011115611542575f5ffd5b8160208501602083015e5f918101602001919091529392505050565b805163ffffffff811681146114ee575f5ffd5b5f60a08284031215611581575f5ffd5b60405160a0810167ffffffffffffffff811182821017156115a4576115a461135c565b6040908152835182526020808501519083015290915081906115c790840161155e565b60408201526115d86060840161155e565b6060820152608083015167ffffffffffffffff811681146115f7575f5ffd5b6080919091015292915050565b805180151581146114ee575f5ffd5b5f5f5f60608486031215611625575f5ffd5b835167ffffffffffffffff81111561163b575f5ffd5b8401610180818703121561164d575f5ffd5b611655611370565b61165e826114e3565b815261166c602083016114e3565b602082015261167d604083016114e3565b604082015261168e606083016114f3565b606082015261169f60808301611501565b60808201526116b060a083016114e3565b60a082015260c082015167ffffffffffffffff8111156116ce575f5ffd5b6116da88828501611511565b60c0830152506116ed8760e08401611571565b60e082015293506117029050602085016114e3565b915061171060408501611604565b90509250925092565b600481106117295761172961115d565b9052565b602080825282516001600160a01b0316828201528201515f9061175b60408401826001600160a01b03169052565b5060408301516001600160a01b03811660608401525060608301516117836080840182611719565b50608083015160ff811660a08401525060a08301516001600160a01b03811660c08401525060c083015161018060e08401526117c36101a0840182611274565b60e085015180516101008601526020810151610120860152604081015163ffffffff908116610140870152606082015116610160860152608081015167ffffffffffffffff16610180860152909150611034565b808201808211156101ea57634e487b7160e01b5f52601160045260245ffd5b6001600160a01b03831681526040602082018190525f90610ff99083018461127456fe60806040526040516104a73803806104a7833981016040819052610022916102b0565b61002d82825f610034565b50506103ca565b61003d8361005f565b5f825111806100495750805b1561005a57610058838361009e565b505b505050565b610068816100ca565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b60606100c383836040518060600160405280602781526020016104806027913961017d565b9392505050565b6001600160a01b0381163b61013c5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b60605f5f856001600160a01b031685604051610199919061037f565b5f60405180830381855af49150503d805f81146101d1576040519150601f19603f3d011682016040523d82523d5f602084013e6101d6565b606091505b5090925090506101e8868383876101f2565b9695505050505050565b606083156102605782515f03610259576001600160a01b0385163b6102595760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610133565b508161026a565b61026a8383610272565b949350505050565b8151156102825781518083602001fd5b8060405162461bcd60e51b81526004016101339190610395565b634e487b7160e01b5f52604160045260245ffd5b5f5f604083850312156102c1575f5ffd5b82516001600160a01b03811681146102d7575f5ffd5b60208401519092506001600160401b038111156102f2575f5ffd5b8301601f81018513610302575f5ffd5b80516001600160401b0381111561031b5761031b61029c565b604051601f8201601f19908116603f011681016001600160401b03811182821017156103495761034961029c565b604052818152828201602001871015610360575f5ffd5b8160208401602083015e5f602083830101528093505050509250929050565b5f82518060208501845e5f920191825250919050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b60aa806103d65f395ff3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6057565b565b5f60527f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b365f5f375f5f365f845af43d5f5f3e8080156070573d5ff35b3d5ffdfea2646970667358221220f596177574fb5733098a983bc49f8fe9531648f70d6d44bcba2ad2beb8133df564736f6c634300081d0033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212205a93e53c264e14f5d7e488f8868e3962001a642a584980205e5ae20770a7ccea64736f6c634300081d00330000000000000000000000008ef90e60d2e7a176d05fc0e6329d00c224cc63a300cf59c627b7a4052041c4f16b4c635a960e29554a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001647bd3e8ac00000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000268ea81376db1f25a44dd8ac4d97487e1dce82440000000000000000000000008b43b2852fc5031d01ddfcdf702973d93a2ff59300000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000000f696e746572666f6c642d63726973700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000131000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001310000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
Signatures
0x00000000000000000000000026f8034babfbca2233350a0dca1ccce3d01fa41f000000000000000000000000000000000000000000000000000000000000000001b2e44a589ae2077a2cd43be46b46502a4ebf90387a207576cbd2a53a928b2c8f07ad0a328fb690cdb69ace11327a380958922edfba50b209ddc814e57b5678481b475fd2475703bddb40c3fcc58a99a5cd338fe786341b10eab975f8009e6abb334f1842391823573d5f236f8fb411b13052d8c70ed71858bbcc638c6a68825a121b