0x608060405260043610610134575f3560e01c8063715018a6116100a8578063a9059cbb1161006d578063a9059cbb14610369578063b79dd34714610388578063c9567bf9146103a7578063dd62ed3e146103bb578063df778d26146103ff578063e06bd4a514610413575f5ffd5b8063715018a6146102cd5780637d1db4a5146102e15780638b4cee08146102f65780638da5cb5b1461031557806395d89b411461033b575f5ffd5b806323b872dd116100f957806323b872dd1461021757806327a14fc214610236578063313ce5671461025557806362256589146102705780636c0a24eb1461028457806370a0823114610299575f5ffd5b806306fdde031461013f578063095ea7b3146101865780630cc835a3146101b557806318160ddd146101d65780631e293c10146101f8575f5ffd5b3661013b57005b5f5ffd5b34801561014a575f5ffd5b5060408051808201909152600d81526c111959d95b9d1c985b1a5e9959609a1b60208201525b60405161017d9190611564565b60405180910390f35b348015610191575f5ffd5b506101a56101a03660046115ad565b610428565b604051901515815260200161017d565b3480156101c0575f5ffd5b506101d46101cf3660046115d7565b61043e565b005b3480156101e1575f5ffd5b506101ea6104d6565b60405190815260200161017d565b348015610203575f5ffd5b506101d46102123660046115d7565b6104f6565b348015610222575f5ffd5b506101a56102313660046115ee565b6105c0565b348015610241575f5ffd5b506101d46102503660046115d7565b610627565b348015610260575f5ffd5b506040516012815260200161017d565b34801561027b575f5ffd5b506101d46106e5565b34801561028f575f5ffd5b506101ea600a5481565b3480156102a4575f5ffd5b506101ea6102b336600461162c565b6001600160a01b03165f9081526004602052604090205490565b3480156102d8575f5ffd5b506101d46107a6565b3480156102ec575f5ffd5b506101ea600b5481565b348015610301575f5ffd5b506101d46103103660046115d7565b610817565b348015610320575f5ffd5b505f546040516001600160a01b03909116815260200161017d565b348015610346575f5ffd5b506040805180820190915260068152652222a3a32aa760d11b6020820152610170565b348015610374575f5ffd5b506101a56103833660046115ad565b6108a8565b348015610393575f5ffd5b506101d46103a23660046115d7565b6108b4565b3480156103b2575f5ffd5b506101d461097d565b3480156103c6575f5ffd5b506101ea6103d5366004611647565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b34801561040a575f5ffd5b506101d4610a23565b34801561041e575f5ffd5b506101ea600c5481565b5f610434338484610a6d565b5060015b92915050565b5f546001600160a01b031633146104705760405162461bcd60e51b81526004016104679061167e565b60405180910390fd5b60148111156104d15760405162461bcd60e51b815260206004820152602760248201527f7365744275794665653a206275794665652073686f756c646e2774206578636560448201526632b2101918129760c91b6064820152608401610467565b600555565b5f6104e36012600a6117aa565b6104f1906305f5e1006117b8565b905090565b5f546001600160a01b0316331461051f5760405162461bcd60e51b81526004016104679061167e565b620f42408110156105a45760405162461bcd60e51b815260206004820152604360248201527f7365744d61785472616e73616374696f6e416d6f756e743a20416d6f756e742060448201527f73686f756c64206265206d6f7265207468616e203130303030303020746f6b6560648201526237399760e91b608482015260a401610467565b6105b06012600a6117aa565b6105ba90826117b8565b600b5550565b5f6105cc848484610b93565b61061d8433610618856040518060600160405280602981526020016118f5602991396001600160a01b038a165f90815260036020908152604080832033845290915290205491906111da565b610a6d565b5060019392505050565b5f546001600160a01b031633146106505760405162461bcd60e51b81526004016104679061167e565b620f42408110156106c95760405162461bcd60e51b815260206004820152603e60248201527f7365744d617857616c6c6574416d6f756e743a20416d6f756e742073686f756c60448201527f64206265206d6f7265207468616e203130303030303020746f6b656e732e00006064820152608401610467565b6106d56012600a6117aa565b6106df90826117b8565b600a5550565b5f546001600160a01b0316331461070e5760405162461bcd60e51b81526004016104679061167e565b61071a6012600a6117aa565b610728906305f5e1006117b8565b600b556107376012600a6117aa565b610745906305f5e1006117b8565b600a908155600e805460ff60a01b191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf90610785906012906117aa565b610793906305f5e1006117b8565b60405190815260200160405180910390a1565b5f546001600160a01b031633146107cf5760405162461bcd60e51b81526004016104679061167e565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146108405760405162461bcd60e51b81526004016104679061167e565b60148111156108a35760405162461bcd60e51b815260206004820152602960248201527f73657453656c6c4665653a2073656c6c4665652073686f756c646e277420657860448201526831b2b2b2101918129760b91b6064820152608401610467565b600655565b5f610434338484610b93565b5f546001600160a01b031633146108dd5760405162461bcd60e51b81526004016104679061167e565b620f42408110156109615760405162461bcd60e51b815260206004820152604260248201527f7365744d617853776170416d6f756e74416d6f756e743a20416d6f756e74207360448201527f686f756c64206265206d6f7265207468616e203130303030303020746f6b656e606482015261399760f11b608482015260a401610467565b61096d6012600a6117aa565b61097790826117b8565b600c5550565b5f546001600160a01b031633146109a65760405162461bcd60e51b81526004016104679061167e565b600e54600160a81b900460ff1615610a0e5760405162461bcd60e51b815260206004820152602560248201527f6f70656e54726164696e673a2054726164696e6720697320616c72656164792060448201526437b832b71760d91b6064820152608401610467565b600e805460ff60a81b1916600160a81b179055565b5f546001600160a01b03163314610a4c5760405162461bcd60e51b81526004016104679061167e565b305f908152600460205260409020548015610a6a57610a6a81611212565b50565b6001600160a01b038316610ad15760405162461bcd60e51b815260206004820152602560248201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152643932b9b99760d91b6064820152608401610467565b6001600160a01b038216610b335760405162461bcd60e51b815260206004820152602360248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201526239b99760e91b6064820152608401610467565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bf85760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015265323932b9b99760d11b6064820152608401610467565b6001600160a01b038216610c5a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526332b9b99760e11b6064820152608401610467565b5f8111610cc75760405162461bcd60e51b815260206004820152603560248201527f5f7472616e736665723a205472616e7366657220616d6f756e74206d7573742060448201527431329033b932b0ba32b9103a3430b7103d32b9379760591b6064820152608401610467565b5f8080610cdb5f546001600160a01b031690565b6001600160a01b0316866001600160a01b031614158015610d0957505f546001600160a01b03868116911614155b1561101957600b54841115610d865760405162461bcd60e51b815260206004820152603d60248201527f5f7472616e736665723a20416d6f756e74206f66207472616e7366657220657860448201527f6365656473206d6178207472616e73616374696f6e20616d6f756e742e0000006064820152608401610467565b6002546001600160a01b038781169116148015610db157506001546001600160a01b03868116911614155b15610ece57600e54600160a81b900460ff16610ddf5760405162461bcd60e51b8152600401610467906117cf565b600a5484610e01876001600160a01b03165f9081526004602052604090205490565b610e0b9190611810565b1115610e7f5760405162461bcd60e51b815260206004820152603860248201527f5f7472616e736665723a20416d6f756e74206f66207472616e7366657220657860448201527f6365656473206d61782077616c6c657420616d6f756e742e00000000000000006064820152608401610467565b610e9f6064610e996007548761139890919063ffffffff16565b9061141d565b9250610ebb6064610e996009548761139890919063ffffffff16565b9150610ec7838361145e565b9050611019565b6002546001600160a01b039081169086160361101657600e54600160a81b900460ff16610f0d5760405162461bcd60e51b8152600401610467906117cf565b610f276064610e996008548761139890919063ffffffff16565b9250610f436064610e996009548761139890919063ffffffff16565b9150610f4f838361145e565b305f90815260046020526040902054600e5491925090600160b01b900460ff16158015610f8957506002546001600160a01b038781169116145b1561101057600e54600160a01b900460ff1615610fec575f600c548211610fb05781610fb4565b600c545b9050610fcc818711610fc65786611212565b81611212565b4766b1a2bc2ec50000811115610fe557610fe5476114bc565b5050611010565b610ff581611212565b4766b1a2bc2ec5000081111561100e5761100e476114bc565b505b50611019565b505f5b801561111357305f90815260046020526040902054611038908461145e565b305f81815260046020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110889087815260200190565b60405180910390a3600e546001600160a01b03165f908152600460205260409020546110b4908361145e565b600e80546001600160a01b039081165f90815260046020908152604091829020949094559154915185815291811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35b6001600160a01b0386165f9081526004602052604090205461113590856114f7565b6001600160a01b0387165f9081526004602052604090205561117861115a85836114f7565b6001600160a01b0387165f908152600460205260409020549061145e565b6001600160a01b038087165f8181526004602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111c187856114f7565b60405190815260200160405180910390a3505050505050565b5f81848411156111fd5760405162461bcd60e51b81526004016104679190611564565b505f6112098486611823565b95945050505050565b600e805460ff60b01b1916600160b01b179055801561138857600b5481111561123a5750600b545b6040805160028082526060820183525f9260208301908036833701905050905030815f8151811061126d5761126d611836565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112c4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112e8919061184a565b816001815181106112fb576112fb611836565b6001600160a01b0392831660209182029290920101526001546113219130911684610a6d565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac947906113599085905f90869030904290600401611865565b5f604051808303815f87803b158015611370575f5ffd5b505af1158015611382573d5f5f3e3d5ffd5b50505050505b50600e805460ff60b01b19169055565b5f825f036113a757505f610438565b5f6113b283856117b8565b9050826113bf85836118d5565b146114165760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610467565b9392505050565b5f61141683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611538565b5f8061146a8385611810565b9050838110156114165760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610467565b600d546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156114f3573d5f5f3e3d5ffd5b5050565b5f61141683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111da565b5f81836115585760405162461bcd60e51b81526004016104679190611564565b505f61120984866118d5565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610a6a575f5ffd5b5f5f604083850312156115be575f5ffd5b82356115c981611599565b946020939093013593505050565b5f602082840312156115e7575f5ffd5b5035919050565b5f5f5f60608486031215611600575f5ffd5b833561160b81611599565b9250602084013561161b81611599565b929592945050506040919091013590565b5f6020828403121561163c575f5ffd5b813561141681611599565b5f5f60408385031215611658575f5ffd5b823561166381611599565b9150602083013561167381611599565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b6001815b6001841115611702578085048111156116e6576116e66116b3565b60018416156116f457908102905b60019390931c9280026116cb565b935093915050565b5f8261171857506001610438565b8161172457505f610438565b816001811461173a576002811461174457611760565b6001915050610438565b60ff841115611755576117556116b3565b50506001821b610438565b5060208310610133831016604e8410600b8410161715611783575081810a610438565b61178f5f1984846116c7565b805f19048211156117a2576117a26116b3565b029392505050565b5f61141660ff84168361170a565b8082028115828204841417610438576104386116b3565b60208082526021908201527f5f7472616e736665723a205472616465206973206e6f7420796574206f70656e6040820152601760f91b606082015260800190565b80820180821115610438576104386116b3565b81810381811115610438576104386116b3565b634e487b7160e01b5f52603260045260245ffd5b5f6020828403121561185a575f5ffd5b815161141681611599565b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156118b55783516001600160a01b031683526020938401939092019160010161188e565b50506001600160a01b039590951660608401525050608001529392505050565b5f826118ef57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63652ea26469706673582212209567d23c250e4a90b27bb22449be1e42a05ba1660ea987c61c9e9309e775989264736f6c634300081b0033
0x6080604052600e600555601360065561001a6012600a610750565b61002790620f424061075e565b600a556012600a6100389190610750565b61004590620f424061075e565b600b556100546012600a610750565b61006190620f424061075e565b600c55600e8054600161ff0160a81b0319167401000000000000000000000000000000000000dead179055348015610097575f5ffd5b506040516121623803806121628339810160408190526100b691610775565b5f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3505f6101266064610120601261010c81600a610750565b61011a906305f5e10061075e565b906103b5565b90610441565b600d80546001600160a01b03199081166001600160a01b03861617909155600554600755600654600855600160098190558054737a250d5630b4cf539739df2c5dacb4c659f2488d92168217905590915061019c9030906101896012600a610750565b610197906305f5e10061075e565b610488565b60015f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101ec573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102109190610775565b6001600160a01b031663c9c653963060015f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561026f573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102939190610775565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156102dd573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103019190610775565b600280546001600160a01b0319166001600160a01b0392909216919091179055610345816103316012600a610750565b61033f906305f5e10061075e565b906105ae565b335f8181526004602052604080822093909355308152918220839055907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61038f6012600a610750565b61039d906305f5e10061075e565b60405190815260200160405180910390a35050610802565b5f825f036103c457505f61043b565b5f6103cf838561075e565b9050826103dc858361079b565b146104385760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084015b60405180910390fd5b90505b92915050565b5f61043883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506105f560201b60201c565b6001600160a01b0383166104ec5760405162461bcd60e51b815260206004820152602560248201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152643932b9b99760d91b606482015260840161042f565b6001600160a01b03821661054e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201526239b99760e91b606482015260840161042f565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f61043883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061062a60201b60201c565b5f81836106155760405162461bcd60e51b815260040161042f91906107ba565b505f610621848661079b565b95945050505050565b5f818484111561064d5760405162461bcd60e51b815260040161042f91906107ba565b505f61062184866107ef565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156106a85780850481111561068c5761068c610659565b600184161561069a57908102905b60019390931c928002610671565b935093915050565b5f826106be5750600161043b565b816106ca57505f61043b565b81600181146106e057600281146106ea57610706565b600191505061043b565b60ff8411156106fb576106fb610659565b50506001821b61043b565b5060208310610133831016604e8410600b8410161715610729575081810a61043b565b6107355f19848461066d565b805f190482111561074857610748610659565b029392505050565b5f61043860ff8416836106b0565b808202811582820484141761043b5761043b610659565b5f60208284031215610785575f5ffd5b81516001600160a01b0381168114610438575f5ffd5b5f826107b557634e487b7160e01b5f52601260045260245ffd5b500490565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b8181038181111561043b5761043b610659565b6119538061080f5f395ff3fe608060405260043610610134575f3560e01c8063715018a6116100a8578063a9059cbb1161006d578063a9059cbb14610369578063b79dd34714610388578063c9567bf9146103a7578063dd62ed3e146103bb578063df778d26146103ff578063e06bd4a514610413575f5ffd5b8063715018a6146102cd5780637d1db4a5146102e15780638b4cee08146102f65780638da5cb5b1461031557806395d89b411461033b575f5ffd5b806323b872dd116100f957806323b872dd1461021757806327a14fc214610236578063313ce5671461025557806362256589146102705780636c0a24eb1461028457806370a0823114610299575f5ffd5b806306fdde031461013f578063095ea7b3146101865780630cc835a3146101b557806318160ddd146101d65780631e293c10146101f8575f5ffd5b3661013b57005b5f5ffd5b34801561014a575f5ffd5b5060408051808201909152600d81526c111959d95b9d1c985b1a5e9959609a1b60208201525b60405161017d9190611564565b60405180910390f35b348015610191575f5ffd5b506101a56101a03660046115ad565b610428565b604051901515815260200161017d565b3480156101c0575f5ffd5b506101d46101cf3660046115d7565b61043e565b005b3480156101e1575f5ffd5b506101ea6104d6565b60405190815260200161017d565b348015610203575f5ffd5b506101d46102123660046115d7565b6104f6565b348015610222575f5ffd5b506101a56102313660046115ee565b6105c0565b348015610241575f5ffd5b506101d46102503660046115d7565b610627565b348015610260575f5ffd5b506040516012815260200161017d565b34801561027b575f5ffd5b506101d46106e5565b34801561028f575f5ffd5b506101ea600a5481565b3480156102a4575f5ffd5b506101ea6102b336600461162c565b6001600160a01b03165f9081526004602052604090205490565b3480156102d8575f5ffd5b506101d46107a6565b3480156102ec575f5ffd5b506101ea600b5481565b348015610301575f5ffd5b506101d46103103660046115d7565b610817565b348015610320575f5ffd5b505f546040516001600160a01b03909116815260200161017d565b348015610346575f5ffd5b506040805180820190915260068152652222a3a32aa760d11b6020820152610170565b348015610374575f5ffd5b506101a56103833660046115ad565b6108a8565b348015610393575f5ffd5b506101d46103a23660046115d7565b6108b4565b3480156103b2575f5ffd5b506101d461097d565b3480156103c6575f5ffd5b506101ea6103d5366004611647565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b34801561040a575f5ffd5b506101d4610a23565b34801561041e575f5ffd5b506101ea600c5481565b5f610434338484610a6d565b5060015b92915050565b5f546001600160a01b031633146104705760405162461bcd60e51b81526004016104679061167e565b60405180910390fd5b60148111156104d15760405162461bcd60e51b815260206004820152602760248201527f7365744275794665653a206275794665652073686f756c646e2774206578636560448201526632b2101918129760c91b6064820152608401610467565b600555565b5f6104e36012600a6117aa565b6104f1906305f5e1006117b8565b905090565b5f546001600160a01b0316331461051f5760405162461bcd60e51b81526004016104679061167e565b620f42408110156105a45760405162461bcd60e51b815260206004820152604360248201527f7365744d61785472616e73616374696f6e416d6f756e743a20416d6f756e742060448201527f73686f756c64206265206d6f7265207468616e203130303030303020746f6b6560648201526237399760e91b608482015260a401610467565b6105b06012600a6117aa565b6105ba90826117b8565b600b5550565b5f6105cc848484610b93565b61061d8433610618856040518060600160405280602981526020016118f5602991396001600160a01b038a165f90815260036020908152604080832033845290915290205491906111da565b610a6d565b5060019392505050565b5f546001600160a01b031633146106505760405162461bcd60e51b81526004016104679061167e565b620f42408110156106c95760405162461bcd60e51b815260206004820152603e60248201527f7365744d617857616c6c6574416d6f756e743a20416d6f756e742073686f756c60448201527f64206265206d6f7265207468616e203130303030303020746f6b656e732e00006064820152608401610467565b6106d56012600a6117aa565b6106df90826117b8565b600a5550565b5f546001600160a01b0316331461070e5760405162461bcd60e51b81526004016104679061167e565b61071a6012600a6117aa565b610728906305f5e1006117b8565b600b556107376012600a6117aa565b610745906305f5e1006117b8565b600a908155600e805460ff60a01b191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf90610785906012906117aa565b610793906305f5e1006117b8565b60405190815260200160405180910390a1565b5f546001600160a01b031633146107cf5760405162461bcd60e51b81526004016104679061167e565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146108405760405162461bcd60e51b81526004016104679061167e565b60148111156108a35760405162461bcd60e51b815260206004820152602960248201527f73657453656c6c4665653a2073656c6c4665652073686f756c646e277420657860448201526831b2b2b2101918129760b91b6064820152608401610467565b600655565b5f610434338484610b93565b5f546001600160a01b031633146108dd5760405162461bcd60e51b81526004016104679061167e565b620f42408110156109615760405162461bcd60e51b815260206004820152604260248201527f7365744d617853776170416d6f756e74416d6f756e743a20416d6f756e74207360448201527f686f756c64206265206d6f7265207468616e203130303030303020746f6b656e606482015261399760f11b608482015260a401610467565b61096d6012600a6117aa565b61097790826117b8565b600c5550565b5f546001600160a01b031633146109a65760405162461bcd60e51b81526004016104679061167e565b600e54600160a81b900460ff1615610a0e5760405162461bcd60e51b815260206004820152602560248201527f6f70656e54726164696e673a2054726164696e6720697320616c72656164792060448201526437b832b71760d91b6064820152608401610467565b600e805460ff60a81b1916600160a81b179055565b5f546001600160a01b03163314610a4c5760405162461bcd60e51b81526004016104679061167e565b305f908152600460205260409020548015610a6a57610a6a81611212565b50565b6001600160a01b038316610ad15760405162461bcd60e51b815260206004820152602560248201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152643932b9b99760d91b6064820152608401610467565b6001600160a01b038216610b335760405162461bcd60e51b815260206004820152602360248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201526239b99760e91b6064820152608401610467565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bf85760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015265323932b9b99760d11b6064820152608401610467565b6001600160a01b038216610c5a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526332b9b99760e11b6064820152608401610467565b5f8111610cc75760405162461bcd60e51b815260206004820152603560248201527f5f7472616e736665723a205472616e7366657220616d6f756e74206d7573742060448201527431329033b932b0ba32b9103a3430b7103d32b9379760591b6064820152608401610467565b5f8080610cdb5f546001600160a01b031690565b6001600160a01b0316866001600160a01b031614158015610d0957505f546001600160a01b03868116911614155b1561101957600b54841115610d865760405162461bcd60e51b815260206004820152603d60248201527f5f7472616e736665723a20416d6f756e74206f66207472616e7366657220657860448201527f6365656473206d6178207472616e73616374696f6e20616d6f756e742e0000006064820152608401610467565b6002546001600160a01b038781169116148015610db157506001546001600160a01b03868116911614155b15610ece57600e54600160a81b900460ff16610ddf5760405162461bcd60e51b8152600401610467906117cf565b600a5484610e01876001600160a01b03165f9081526004602052604090205490565b610e0b9190611810565b1115610e7f5760405162461bcd60e51b815260206004820152603860248201527f5f7472616e736665723a20416d6f756e74206f66207472616e7366657220657860448201527f6365656473206d61782077616c6c657420616d6f756e742e00000000000000006064820152608401610467565b610e9f6064610e996007548761139890919063ffffffff16565b9061141d565b9250610ebb6064610e996009548761139890919063ffffffff16565b9150610ec7838361145e565b9050611019565b6002546001600160a01b039081169086160361101657600e54600160a81b900460ff16610f0d5760405162461bcd60e51b8152600401610467906117cf565b610f276064610e996008548761139890919063ffffffff16565b9250610f436064610e996009548761139890919063ffffffff16565b9150610f4f838361145e565b305f90815260046020526040902054600e5491925090600160b01b900460ff16158015610f8957506002546001600160a01b038781169116145b1561101057600e54600160a01b900460ff1615610fec575f600c548211610fb05781610fb4565b600c545b9050610fcc818711610fc65786611212565b81611212565b4766b1a2bc2ec50000811115610fe557610fe5476114bc565b5050611010565b610ff581611212565b4766b1a2bc2ec5000081111561100e5761100e476114bc565b505b50611019565b505f5b801561111357305f90815260046020526040902054611038908461145e565b305f81815260046020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110889087815260200190565b60405180910390a3600e546001600160a01b03165f908152600460205260409020546110b4908361145e565b600e80546001600160a01b039081165f90815260046020908152604091829020949094559154915185815291811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35b6001600160a01b0386165f9081526004602052604090205461113590856114f7565b6001600160a01b0387165f9081526004602052604090205561117861115a85836114f7565b6001600160a01b0387165f908152600460205260409020549061145e565b6001600160a01b038087165f8181526004602052604090209290925587167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111c187856114f7565b60405190815260200160405180910390a3505050505050565b5f81848411156111fd5760405162461bcd60e51b81526004016104679190611564565b505f6112098486611823565b95945050505050565b600e805460ff60b01b1916600160b01b179055801561138857600b5481111561123a5750600b545b6040805160028082526060820183525f9260208301908036833701905050905030815f8151811061126d5761126d611836565b6001600160a01b03928316602091820292909201810191909152600154604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156112c4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112e8919061184a565b816001815181106112fb576112fb611836565b6001600160a01b0392831660209182029290920101526001546113219130911684610a6d565b60015460405163791ac94760e01b81526001600160a01b039091169063791ac947906113599085905f90869030904290600401611865565b5f604051808303815f87803b158015611370575f5ffd5b505af1158015611382573d5f5f3e3d5ffd5b50505050505b50600e805460ff60b01b19169055565b5f825f036113a757505f610438565b5f6113b283856117b8565b9050826113bf85836118d5565b146114165760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610467565b9392505050565b5f61141683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611538565b5f8061146a8385611810565b9050838110156114165760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610467565b600d546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156114f3573d5f5f3e3d5ffd5b5050565b5f61141683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111da565b5f81836115585760405162461bcd60e51b81526004016104679190611564565b505f61120984866118d5565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610a6a575f5ffd5b5f5f604083850312156115be575f5ffd5b82356115c981611599565b946020939093013593505050565b5f602082840312156115e7575f5ffd5b5035919050565b5f5f5f60608486031215611600575f5ffd5b833561160b81611599565b9250602084013561161b81611599565b929592945050506040919091013590565b5f6020828403121561163c575f5ffd5b813561141681611599565b5f5f60408385031215611658575f5ffd5b823561166381611599565b9150602083013561167381611599565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b6001815b6001841115611702578085048111156116e6576116e66116b3565b60018416156116f457908102905b60019390931c9280026116cb565b935093915050565b5f8261171857506001610438565b8161172457505f610438565b816001811461173a576002811461174457611760565b6001915050610438565b60ff841115611755576117556116b3565b50506001821b610438565b5060208310610133831016604e8410600b8410161715611783575081810a610438565b61178f5f1984846116c7565b805f19048211156117a2576117a26116b3565b029392505050565b5f61141660ff84168361170a565b8082028115828204841417610438576104386116b3565b60208082526021908201527f5f7472616e736665723a205472616465206973206e6f7420796574206f70656e6040820152601760f91b606082015260800190565b80820180821115610438576104386116b3565b81810381811115610438576104386116b3565b634e487b7160e01b5f52603260045260245ffd5b5f6020828403121561185a575f5ffd5b815161141681611599565b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156118b55783516001600160a01b031683526020938401939092019160010161188e565b50506001600160a01b039590951660608401525050608001529392505050565b5f826118ef57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63652ea26469706673582212209567d23c250e4a90b27bb22449be1e42a05ba1660ea987c61c9e9309e775989264736f6c634300081b00330000000000000000000000000ab2683c0a9c6536a70ec007012481596993ee09