0x608060405260043610610236575f3560e01c80637cb332bb11610129578063cc32d176116100a8578063e2f456051161006d578063e2f4560514610718578063e71079471461072d578063edbb3b2c1461074c578063f8b45b051461076b578063fb201b1d14610780575f80fd5b8063cc32d1761461065b578063d201b01e1461067b578063d7c94efd1461069a578063d85ba063146106bb578063dd62ed3e146106d4575f80fd5b80639a7a23d6116100ee5780639a7a23d6146105e1578063a9059cbb14610600578063ab0c86c51461061f578063bc205ad314610627578063c8c8ebe414610646575f80fd5b80637cb332bb1461052657806385ecafd7146105455780638da5cb5b1461057c5780638e17c0171461059857806395d89b41146105b7575f80fd5b80634a62bb65116101b55780636a486a8e1161017a5780636a486a8e1461048d57806370a08231146104ab578063715018a6146104df57806374010ece146104f3578063751039fc14610512575f80fd5b80634a62bb65146103f15780634fcd244614610411578063590ffdce146104305780636402511e1461044f57806366650dae1461046e575f80fd5b806323b872dd116101fb57806323b872dd1461034c57806327a14fc21461036b578063313ce5671461038c5780633c090c461461039f57806349bd5a5e146103be575f80fd5b806306fdde0314610241578063095ea7b3146102865780631694505e146102b557806318160ddd146102f457806321d37e391461031b575f80fd5b3661023d57005b5f80fd5b34801561024c575f80fd5b5060408051808201909152600b81526a2637b73390223930b3b7b760a91b60208201525b60405161027d919061238a565b60405180910390f35b348015610291575f80fd5b506102a56102a03660046123da565b610794565b604051901515815260200161027d565b3480156102c0575f80fd5b506102dc737a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b03909116815260200161027d565b3480156102ff575f80fd5b506aa56fa5b99019a5c80000005b60405190815260200161027d565b348015610326575f80fd5b5060045461033a9062010000900460ff1681565b60405160ff909116815260200161027d565b348015610357575f80fd5b506102a5610366366004612402565b6107aa565b348015610376575f80fd5b5061038a61038536600461243b565b61085e565b005b348015610397575f80fd5b50601261033a565b3480156103aa575f80fd5b5061038a6103b9366004612462565b610941565b3480156103c9575f80fd5b506102dc7f000000000000000000000000235d8bd43ce6a575e4767f4bf1772cc28925c40f81565b3480156103fc575f80fd5b506006546102a590600160a81b900460ff1681565b34801561041c575f80fd5b5061038a61042b3660046124a2565b610a49565b34801561043b575f80fd5b5061038a61044a3660046124e3565b610b72565b34801561045a575f80fd5b5061038a61046936600461243b565b610bd4565b348015610479575f80fd5b5061038a6104883660046124e3565b610d31565b348015610498575f80fd5b5060045461033a90610100900460ff1681565b3480156104b6575f80fd5b5061030d6104c5366004612518565b6001600160a01b03165f9081526007602052604090205490565b3480156104ea575f80fd5b5061038a610d93565b3480156104fe575f80fd5b5061038a61050d36600461243b565b610ddc565b34801561051d575f80fd5b5061038a610ec4565b348015610531575f80fd5b5061038a610540366004612518565b610f0b565b348015610550575f80fd5b506102a561055f366004612518565b6001600160a01b03165f9081526009602052604090205460ff1690565b348015610587575f80fd5b505f546001600160a01b03166102dc565b3480156105a3575f80fd5b5061038a6105b2366004612518565b610f8b565b3480156105c2575f80fd5b50604080518082019091526002815261131160f21b6020820152610270565b3480156105ec575f80fd5b5061038a6105fb3660046124e3565b61100b565b34801561060b575f80fd5b506102a561061a3660046123da565b6110ee565b61038a6110fa565b348015610632575f80fd5b5061038a610641366004612538565b61120d565b348015610651575f80fd5b5061030d60015481565b348015610666575f80fd5b5060045461033a906301000000900460ff1681565b348015610686575f80fd5b5061038a610695366004612518565b6112ba565b3480156106a5575f80fd5b5060045461033a90640100000000900460ff1681565b3480156106c6575f80fd5b5060045461033a9060ff1681565b3480156106df575f80fd5b5061030d6106ee366004612538565b6001600160a01b039182165f90815260086020908152604080832093909416825291909152205490565b348015610723575f80fd5b5061030d60035481565b348015610738575f80fd5b5061038a610747366004612634565b6113d1565b348015610757575f80fd5b5061038a610766366004612518565b6115de565b348015610776575f80fd5b5061030d60025481565b34801561078b575f80fd5b5061038a61166c565b5f6107a03384846116e3565b5060015b92915050565b6001600160a01b0383165f9081526008602090815260408083203384529091528120545f198114610848578281101561083b5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b61084885338584036116e3565b610853858585611806565b506001949350505050565b336108705f546001600160a01b031690565b6001600160a01b0316146108965760405162461bcd60e51b8152600401610832906126ee565b670de0b6b3a76400006103e86108b86aa56fa5b99019a5c80000006001612737565b6108c2919061274e565b6108cc919061274e565b8110156109295760405162461bcd60e51b815260206004820152602560248201527f43616e6e6f7420736574206d61782077616c6c6574206c6f776572207468616e60448201526420302e312560d81b6064820152608401610832565b61093b81670de0b6b3a7640000612737565b60025550565b336109535f546001600160a01b031690565b6001600160a01b0316146109795760405162461bcd60e51b8152600401610832906126ee565b6004805463ffff000019166201000060ff868116820263ff000000191692909217630100000086841681029190911764ff0000000019166401000000008685168102919091179485905584048316936109da9391810482169290041661276d565b6109e4919061276d565b60ff16606414610a445760405162461bcd60e51b815260206004820152602560248201527f446973747269627574696f6e206861766520746f20626520657175616c20746f604482015264203130302560d81b6064820152608401610832565b505050565b33610a5b5f546001600160a01b031690565b6001600160a01b031614610a815760405162461bcd60e51b8152600401610832906126ee565b60058260ff161115610ae75760405162461bcd60e51b815260206004820152602960248201527f4275792066656573206d757374206265206c657373207468616e206f7220657160448201526875616c20746f20352560b81b6064820152608401610832565b60058160ff161115610b4e5760405162461bcd60e51b815260206004820152602a60248201527f53656c6c2066656573206d757374206265206c657373207468616e206f7220656044820152697175616c20746f20352560b01b6064820152608401610832565b6004805460ff9283166101000261ffff199091169290931691909117919091179055565b33610b845f546001600160a01b031690565b6001600160a01b031614610baa5760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b03919091165f908152600960205260409020805460ff1916911515919091179055565b33610be65f546001600160a01b031690565b6001600160a01b031614610c0c5760405162461bcd60e51b8152600401610832906126ee565b620186a0610c266aa56fa5b99019a5c80000006001612737565b610c30919061274e565b811015610c9d5760405162461bcd60e51b815260206004820152603560248201527f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60448201527420302e30303125206f662074686520737570706c7960581b6064820152608401610832565b6103e8610cb66aa56fa5b99019a5c80000006005612737565b610cc0919061274e565b811115610d2c5760405162461bcd60e51b815260206004820152603460248201527f5377617020616d6f756e742063616e6e6f7420626520686967686572207468616044820152736e20302e3525206f662074686520737570706c7960601b6064820152608401610832565b600355565b33610d435f546001600160a01b031690565b6001600160a01b031614610d695760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b03919091165f908152600a60205260409020805460ff1916911515919091179055565b33610da55f546001600160a01b031690565b6001600160a01b031614610dcb5760405162461bcd60e51b8152600401610832906126ee565b5f80546001600160a01b0319169055565b33610dee5f546001600160a01b031690565b6001600160a01b031614610e145760405162461bcd60e51b8152600401610832906126ee565b670de0b6b3a76400006103e8610e366aa56fa5b99019a5c80000006001612737565b610e40919061274e565b610e4a919061274e565b811015610eac5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420736574206d6178207472616e73616374696f6e206c6f776572604482015269207468616e20302e312560b01b6064820152608401610832565b610ebe81670de0b6b3a7640000612737565b60015550565b33610ed65f546001600160a01b031690565b6001600160a01b031614610efc5760405162461bcd60e51b8152600401610832906126ee565b6006805460ff60a81b19169055565b33610f1d5f546001600160a01b031690565b6001600160a01b031614610f435760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b038116610f695760405162461bcd60e51b815260040161083290612786565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b33610f9d5f546001600160a01b031690565b6001600160a01b031614610fc35760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b038116610fe95760405162461bcd60e51b815260040161083290612786565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b3361101d5f546001600160a01b031690565b6001600160a01b0316146110435760405162461bcd60e51b8152600401610832906126ee565b7f000000000000000000000000235d8bd43ce6a575e4767f4bf1772cc28925c40f6001600160a01b0316826001600160a01b0316036110c45760405162461bcd60e51b815260206004820152601a60248201527f54686520706169722063616e6e6f742062652072656d6f7665640000000000006044820152606401610832565b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b5f6107a0338484611806565b3361110c5f546001600160a01b031690565b6001600160a01b0316146111325760405162461bcd60e51b8152600401610832906126ee565b600654600160b01b900460ff161561115c5760405162461bcd60e51b8152600401610832906127b6565b305f8181526007602052604080822054600654915163f305d71960e01b8152600481019490945260248401526044830182905260648301919091526001600160a01b031660848201524260a4820152737a250d5630b4cf539739df2c5dacb4c659f2488d9063f305d71990349060c40160606040518083038185885af11580156111e8573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610a4491906127e0565b3361121f5f546001600160a01b031690565b6001600160a01b0316146112455760405162461bcd60e51b8152600401610832906126ee565b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa158015611289573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112ad919061280b565b9050610a44838383611f6b565b336112cc5f546001600160a01b031690565b6001600160a01b0316146112f25760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b03811661133a5760405162461bcd60e51b815260206004820152600f60248201526e496e76616c6964206164647265737360881b6044820152606401610832565b5f816001600160a01b0316476040515f6040518083038185875af1925050503d805f8114611383576040519150601f19603f3d011682016040523d82523d5f602084013e611388565b606091505b50509050806113cd5760405162461bcd60e51b815260206004820152601160248201527015da5d1a191c985dd85b0819985a5b1959607a1b6044820152606401610832565b5050565b336113e35f546001600160a01b031690565b6001600160a01b0316146114095760405162461bcd60e51b8152600401610832906126ee565b600654600160b01b900460ff16156114335760405162461bcd60e51b8152600401610832906127b6565b5f5b8251811015610a445781818151811061145057611450612822565b602002602001015160075f336001600160a01b03166001600160a01b031681526020019081526020015f2054101561149a5760405162461bcd60e51b815260040161083290612836565b8181815181106114ac576114ac612822565b602002602001015160075f8584815181106114c9576114c9612822565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f8282546114fe919061287c565b9250508190555081818151811061151757611517612822565b602002602001015160075f336001600160a01b03166001600160a01b031681526020019081526020015f205f828254611550919061288f565b9250508190555082818151811061156957611569612822565b60200260200101516001600160a01b0316336001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8484815181106115b7576115b7612822565b60200260200101516040516115ce91815260200190565b60405180910390a3600101611435565b336115f05f546001600160a01b031690565b6001600160a01b0316146116165760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b03811661163c5760405162461bcd60e51b815260040161083290612786565b600480546001600160a01b03909216650100000000000265010000000000600160c81b0319909216919091179055565b3361167e5f546001600160a01b031690565b6001600160a01b0316146116a45760405162461bcd60e51b8152600401610832906126ee565b600654600160b01b900460ff16156116ce5760405162461bcd60e51b8152600401610832906127b6565b6006805460ff60b01b1916600160b01b179055565b6001600160a01b0383166117455760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610832565b6001600160a01b0382166117a65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610832565b6001600160a01b038381165f8181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661186a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610832565b6001600160a01b0382166118cc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610832565b5f811161192d5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610832565b600654600160b01b900460ff1615801561198157505f546001600160a01b0384811691161480159061196857506001600160a01b0383163014155b801561198157505f546001600160a01b03838116911614155b156119c45760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b6044820152606401610832565b600654600160a81b900460ff1615611c85575f546001600160a01b03848116911614801590611a0057505f546001600160a01b03838116911614155b8015611a1457506001600160a01b03821615155b8015611a2b57506001600160a01b03821661dead14155b8015611a415750600654600160a01b900460ff16155b15611c85576001600160a01b0383165f908152600b602052604090205460ff168015611a8557506001600160a01b0382165f908152600a602052604090205460ff16155b15611b5857600154811115611aea5760405162461bcd60e51b815260206004820152602560248201527f427579207472616e7366657220616d6f756e74206578636565647320746865206044820152640dac2f0a8f60db1b6064820152608401610832565b6002546001600160a01b0383165f90815260076020526040902054611b0f908361287c565b1115611b535760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610832565b611c85565b6001600160a01b0382165f908152600b602052604090205460ff168015611b9757506001600160a01b0383165f908152600a602052604090205460ff16155b15611bfd57600154811115611b535760405162461bcd60e51b815260206004820152602660248201527f53656c6c207472616e7366657220616d6f756e74206578636565647320746865604482015265040dac2f0a8f60d31b6064820152608401610832565b6001600160a01b0382165f908152600a602052604090205460ff16611c85576002546001600160a01b0383165f90815260076020526040902054611c41908361287c565b1115611c855760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610832565b600354305f90815260076020526040902054108015908190611cb15750600654600160a01b900460ff16155b8015611cd557506001600160a01b0384165f908152600b602052604090205460ff16155b8015611cf957506001600160a01b0384165f9081526009602052604090205460ff16155b8015611d1d57506001600160a01b0383165f9081526009602052604090205460ff16155b15611d4b576006805460ff60a01b1916600160a01b179055611d3d612092565b6006805460ff60a01b191690555b6006546001600160a01b0385165f9081526009602052604090205460ff600160a01b909204821615911680611d9757506001600160a01b0384165f9081526009602052604090205460ff165b15611d9f57505f5b6001600160a01b0385165f9081526007602052604090205483811015611dd75760405162461bcd60e51b815260040161083290612836565b5f8215611ef9576001600160a01b0386165f908152600b602052604090205460ff168015611e0e5750600454610100900460ff1615155b15611e3c57600454606490611e2b90610100900460ff1687612737565b611e35919061274e565b9050611e8c565b6001600160a01b0387165f908152600b602052604090205460ff168015611e67575060045460ff1615155b15611e8c57600454606490611e7f9060ff1687612737565b611e89919061274e565b90505b8015611ef9576001600160a01b0387165f8181526007602090815260408083208054869003905530808452928190208054860190555184815297849003979192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35b6001600160a01b038088165f8181526007602052604080822080548a900390559289168082529083902080548901905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611f5a9089815260200190565b60405180910390a350505050505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b17905291515f92839290871691611fc691906128a2565b5f604051808303815f865af19150503d805f8114611fff576040519150601f19603f3d011682016040523d82523d5f602084013e612004565b606091505b509150915081801561202e57508051158061202e57508080602001905181019061202e91906128b8565b61208b5760405162461bcd60e51b815260206004820152602860248201527f5472616e7366657248656c7065723a20494e5445524e414c205452414e5346456044820152671497d1905253115160c21b6064820152608401610832565b5050505050565b6003545f6120a1826014612737565b305f9081526007602052604090205411156120c7576003546120c4906014612737565b91505b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106120fa576120fa612822565b60200260200101906001600160a01b031690816001600160a01b03168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc28160018151811061214257612142612822565b6001600160a01b039092166020928302919091019091015260405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac947906121999086905f908690309042906004016128d3565b5f604051808303815f87803b1580156121b0575f80fd5b505af11580156121c2573d5f803e3d5ffd5b504792505081159050612384576004545f906064906121ea9062010000900460ff1684612737565b6121f4919061274e565b6004549091505f9060649061221490640100000000900460ff1685612737565b61221e919061274e565b90505f8161222c848661288f565b612236919061288f565b6006546040519192506001600160a01b03169083905f81818185875af1925050503d805f8114612281576040519150601f19603f3d011682016040523d82523d5f602084013e612286565b606091505b50506005546040519197506001600160a01b03169082905f81818185875af1925050503d805f81146122d3576040519150601f19603f3d011682016040523d82523d5f602084013e6122d8565b606091505b50506004546040519197506501000000000090046001600160a01b03169084905f81818185875af1925050503d805f811461232e576040519150601f19603f3d011682016040523d82523d5f602084013e612333565b606091505b50506040805189815260208101859052908101859052606081018390529096507f93efcf28fbf701a930e0ad258987a2e4f08eb3aa99f9c02029e7ba049f69405f9060800160405180910390a15050505b50505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b03811681146123d5575f80fd5b919050565b5f80604083850312156123eb575f80fd5b6123f4836123bf565b946020939093013593505050565b5f805f60608486031215612414575f80fd5b61241d846123bf565b925061242b602085016123bf565b9150604084013590509250925092565b5f6020828403121561244b575f80fd5b5035919050565b803560ff811681146123d5575f80fd5b5f805f60608486031215612474575f80fd5b61247d84612452565b925061248b60208501612452565b915061249960408501612452565b90509250925092565b5f80604083850312156124b3575f80fd5b6124bc83612452565b91506124ca60208401612452565b90509250929050565b80151581146124e0575f80fd5b50565b5f80604083850312156124f4575f80fd5b6124fd836123bf565b9150602083013561250d816124d3565b809150509250929050565b5f60208284031215612528575f80fd5b612531826123bf565b9392505050565b5f8060408385031215612549575f80fd5b612552836123bf565b91506124ca602084016123bf565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561259d5761259d612560565b604052919050565b5f67ffffffffffffffff8211156125be576125be612560565b5060051b60200190565b5f82601f8301126125d7575f80fd5b813560206125ec6125e7836125a5565b612574565b8083825260208201915060208460051b87010193508684111561260d575f80fd5b602086015b848110156126295780358352918301918301612612565b509695505050505050565b5f8060408385031215612645575f80fd5b823567ffffffffffffffff8082111561265c575f80fd5b818501915085601f83011261266f575f80fd5b8135602061267f6125e7836125a5565b82815260059290921b8401810191818101908984111561269d575f80fd5b948201945b838610156126c2576126b3866123bf565b825294820194908201906126a2565b965050860135925050808211156126d7575f80fd5b506126e4858286016125c8565b9150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176107a4576107a4612723565b5f8261276857634e487b7160e01b5f52601260045260245ffd5b500490565b60ff81811683821601908111156107a4576107a4612723565b602080825260169082015275416464726573732063616e6e6f74206265207a65726f60501b604082015260600190565b60208082526010908201526f105b1c9958591e481b185d5b98da195960821b604082015260600190565b5f805f606084860312156127f2575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561281b575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b60208082526026908201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604082015265616c616e636560d01b606082015260800190565b808201808211156107a4576107a4612723565b818103818111156107a4576107a4612723565b5f82518060208501845e5f920191825250919050565b5f602082840312156128c8575f80fd5b8151612531816124d3565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156129235784516001600160a01b0316835293830193918301916001016128fe565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212207a1f031a90a49941262cb932910edad10eea908a4c0e5334c842ff3fec43c9dc64736f6c63430008190033
0x60a06040526a01a784379d99db420000006001556a01a784379d99db420000006002556127106aa56fa5b99019a5c8000000600261003d9190610719565b6100479190610742565b600355600480546001600160c81b03191678706c7965535411d6ce2de1e55ed0c19e72924c46191932050517905560058054735f921dcda2f196b1ff7a5bf73367ea1f38bf09c36001600160a01b031990911617905560068054600161ff0160a01b0319167501000a1c384107b19c0ba3bc5dcfecb6bc43f11be18a1790553480156100d1575f80fd5b505f80546001600160a01b031916331790556040805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9163c45a01559160048083019260209291908290030181865afa158015610131573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101559190610761565b6040516364e329cb60e11b815230600482015273c02aaa39b223fe8d0a0e5c4f27ead9083c756cc260248201526001600160a01b03919091169063c9c65396906044016020604051808303815f875af11580156101b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101d89190610761565b6001600160a01b031660808190525f908152600b60205260409020805460ff191660011790557344668f20c6986c8fb2b51bff0cb498dc8e771a5a61022e6102275f546001600160a01b031690565b60016104f3565b6102393060016104f3565b61024661dead60016104f3565b60065461025d906001600160a01b031660016104f3565b60045461027d906501000000000090046001600160a01b031660016104f3565b600554610294906001600160a01b031660016104f3565b6102af6102a85f546001600160a01b031690565b6001610577565b6102ce737a250d5630b4cf539739df2c5dacb4c659f2488d6001610577565b6102d9306001610577565b6102e661dead6001610577565b6080516102f4906001610577565b60065461030b906001600160a01b03166001610577565b60045461032b906501000000000090046001600160a01b03166001610577565b600554610342906001600160a01b03166001610577565b335f8181526007602090815260408083206a18d0bf423c03d8de0000009081905590519081525f80516020613147833981519152910160405180910390a3600480546001600160a01b03650100000000009182900481165f908152600760205260408082206a108b2a2c2802909400000090559354929092041680825282822054925190925f80516020613147833981519152916103e291815260200190565b60405180910390a3600580546001600160a01b039081165f908152600760205260408082206a034f086f3b33b6840000009055925490911680825282822054925190925f805160206131478339815191529161044091815260200190565b60405180910390a36001600160a01b0381165f8181526007602090815260408083206a108b2a2c280290940000009081905590519081525f80516020613147833981519152910160405180910390a3305f8181526007602090815260408083206a683989afc8dcf53e0000009081905590519081525f80516020613147833981519152910160405180910390a36104ed30737a250d5630b4cf539739df2c5dacb4c659f2488d5f196105f6565b5061078e565b336105055f546001600160a01b031690565b6001600160a01b03161461054d5760405162461bcd60e51b815260206004820181905260248201525f8051602061312783398151915260448201526064015b60405180910390fd5b6001600160a01b03919091165f908152600960205260409020805460ff1916911515919091179055565b336105895f546001600160a01b031690565b6001600160a01b0316146105cc5760405162461bcd60e51b815260206004820181905260248201525f805160206131278339815191526044820152606401610544565b6001600160a01b03919091165f908152600a60205260409020805460ff1916911515919091179055565b6001600160a01b0383166106585760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610544565b6001600160a01b0382166106b95760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610544565b6001600160a01b038381165f8181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b808202811582820484141761073c57634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8261075c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215610771575f80fd5b81516001600160a01b0381168114610787575f80fd5b9392505050565b60805161297a6107ad5f395f81816103cf0152611045015261297a5ff3fe608060405260043610610236575f3560e01c80637cb332bb11610129578063cc32d176116100a8578063e2f456051161006d578063e2f4560514610718578063e71079471461072d578063edbb3b2c1461074c578063f8b45b051461076b578063fb201b1d14610780575f80fd5b8063cc32d1761461065b578063d201b01e1461067b578063d7c94efd1461069a578063d85ba063146106bb578063dd62ed3e146106d4575f80fd5b80639a7a23d6116100ee5780639a7a23d6146105e1578063a9059cbb14610600578063ab0c86c51461061f578063bc205ad314610627578063c8c8ebe414610646575f80fd5b80637cb332bb1461052657806385ecafd7146105455780638da5cb5b1461057c5780638e17c0171461059857806395d89b41146105b7575f80fd5b80634a62bb65116101b55780636a486a8e1161017a5780636a486a8e1461048d57806370a08231146104ab578063715018a6146104df57806374010ece146104f3578063751039fc14610512575f80fd5b80634a62bb65146103f15780634fcd244614610411578063590ffdce146104305780636402511e1461044f57806366650dae1461046e575f80fd5b806323b872dd116101fb57806323b872dd1461034c57806327a14fc21461036b578063313ce5671461038c5780633c090c461461039f57806349bd5a5e146103be575f80fd5b806306fdde0314610241578063095ea7b3146102865780631694505e146102b557806318160ddd146102f457806321d37e391461031b575f80fd5b3661023d57005b5f80fd5b34801561024c575f80fd5b5060408051808201909152600b81526a2637b73390223930b3b7b760a91b60208201525b60405161027d919061238a565b60405180910390f35b348015610291575f80fd5b506102a56102a03660046123da565b610794565b604051901515815260200161027d565b3480156102c0575f80fd5b506102dc737a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b03909116815260200161027d565b3480156102ff575f80fd5b506aa56fa5b99019a5c80000005b60405190815260200161027d565b348015610326575f80fd5b5060045461033a9062010000900460ff1681565b60405160ff909116815260200161027d565b348015610357575f80fd5b506102a5610366366004612402565b6107aa565b348015610376575f80fd5b5061038a61038536600461243b565b61085e565b005b348015610397575f80fd5b50601261033a565b3480156103aa575f80fd5b5061038a6103b9366004612462565b610941565b3480156103c9575f80fd5b506102dc7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103fc575f80fd5b506006546102a590600160a81b900460ff1681565b34801561041c575f80fd5b5061038a61042b3660046124a2565b610a49565b34801561043b575f80fd5b5061038a61044a3660046124e3565b610b72565b34801561045a575f80fd5b5061038a61046936600461243b565b610bd4565b348015610479575f80fd5b5061038a6104883660046124e3565b610d31565b348015610498575f80fd5b5060045461033a90610100900460ff1681565b3480156104b6575f80fd5b5061030d6104c5366004612518565b6001600160a01b03165f9081526007602052604090205490565b3480156104ea575f80fd5b5061038a610d93565b3480156104fe575f80fd5b5061038a61050d36600461243b565b610ddc565b34801561051d575f80fd5b5061038a610ec4565b348015610531575f80fd5b5061038a610540366004612518565b610f0b565b348015610550575f80fd5b506102a561055f366004612518565b6001600160a01b03165f9081526009602052604090205460ff1690565b348015610587575f80fd5b505f546001600160a01b03166102dc565b3480156105a3575f80fd5b5061038a6105b2366004612518565b610f8b565b3480156105c2575f80fd5b50604080518082019091526002815261131160f21b6020820152610270565b3480156105ec575f80fd5b5061038a6105fb3660046124e3565b61100b565b34801561060b575f80fd5b506102a561061a3660046123da565b6110ee565b61038a6110fa565b348015610632575f80fd5b5061038a610641366004612538565b61120d565b348015610651575f80fd5b5061030d60015481565b348015610666575f80fd5b5060045461033a906301000000900460ff1681565b348015610686575f80fd5b5061038a610695366004612518565b6112ba565b3480156106a5575f80fd5b5060045461033a90640100000000900460ff1681565b3480156106c6575f80fd5b5060045461033a9060ff1681565b3480156106df575f80fd5b5061030d6106ee366004612538565b6001600160a01b039182165f90815260086020908152604080832093909416825291909152205490565b348015610723575f80fd5b5061030d60035481565b348015610738575f80fd5b5061038a610747366004612634565b6113d1565b348015610757575f80fd5b5061038a610766366004612518565b6115de565b348015610776575f80fd5b5061030d60025481565b34801561078b575f80fd5b5061038a61166c565b5f6107a03384846116e3565b5060015b92915050565b6001600160a01b0383165f9081526008602090815260408083203384529091528120545f198114610848578281101561083b5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b61084885338584036116e3565b610853858585611806565b506001949350505050565b336108705f546001600160a01b031690565b6001600160a01b0316146108965760405162461bcd60e51b8152600401610832906126ee565b670de0b6b3a76400006103e86108b86aa56fa5b99019a5c80000006001612737565b6108c2919061274e565b6108cc919061274e565b8110156109295760405162461bcd60e51b815260206004820152602560248201527f43616e6e6f7420736574206d61782077616c6c6574206c6f776572207468616e60448201526420302e312560d81b6064820152608401610832565b61093b81670de0b6b3a7640000612737565b60025550565b336109535f546001600160a01b031690565b6001600160a01b0316146109795760405162461bcd60e51b8152600401610832906126ee565b6004805463ffff000019166201000060ff868116820263ff000000191692909217630100000086841681029190911764ff0000000019166401000000008685168102919091179485905584048316936109da9391810482169290041661276d565b6109e4919061276d565b60ff16606414610a445760405162461bcd60e51b815260206004820152602560248201527f446973747269627574696f6e206861766520746f20626520657175616c20746f604482015264203130302560d81b6064820152608401610832565b505050565b33610a5b5f546001600160a01b031690565b6001600160a01b031614610a815760405162461bcd60e51b8152600401610832906126ee565b60058260ff161115610ae75760405162461bcd60e51b815260206004820152602960248201527f4275792066656573206d757374206265206c657373207468616e206f7220657160448201526875616c20746f20352560b81b6064820152608401610832565b60058160ff161115610b4e5760405162461bcd60e51b815260206004820152602a60248201527f53656c6c2066656573206d757374206265206c657373207468616e206f7220656044820152697175616c20746f20352560b01b6064820152608401610832565b6004805460ff9283166101000261ffff199091169290931691909117919091179055565b33610b845f546001600160a01b031690565b6001600160a01b031614610baa5760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b03919091165f908152600960205260409020805460ff1916911515919091179055565b33610be65f546001600160a01b031690565b6001600160a01b031614610c0c5760405162461bcd60e51b8152600401610832906126ee565b620186a0610c266aa56fa5b99019a5c80000006001612737565b610c30919061274e565b811015610c9d5760405162461bcd60e51b815260206004820152603560248201527f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60448201527420302e30303125206f662074686520737570706c7960581b6064820152608401610832565b6103e8610cb66aa56fa5b99019a5c80000006005612737565b610cc0919061274e565b811115610d2c5760405162461bcd60e51b815260206004820152603460248201527f5377617020616d6f756e742063616e6e6f7420626520686967686572207468616044820152736e20302e3525206f662074686520737570706c7960601b6064820152608401610832565b600355565b33610d435f546001600160a01b031690565b6001600160a01b031614610d695760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b03919091165f908152600a60205260409020805460ff1916911515919091179055565b33610da55f546001600160a01b031690565b6001600160a01b031614610dcb5760405162461bcd60e51b8152600401610832906126ee565b5f80546001600160a01b0319169055565b33610dee5f546001600160a01b031690565b6001600160a01b031614610e145760405162461bcd60e51b8152600401610832906126ee565b670de0b6b3a76400006103e8610e366aa56fa5b99019a5c80000006001612737565b610e40919061274e565b610e4a919061274e565b811015610eac5760405162461bcd60e51b815260206004820152602a60248201527f43616e6e6f7420736574206d6178207472616e73616374696f6e206c6f776572604482015269207468616e20302e312560b01b6064820152608401610832565b610ebe81670de0b6b3a7640000612737565b60015550565b33610ed65f546001600160a01b031690565b6001600160a01b031614610efc5760405162461bcd60e51b8152600401610832906126ee565b6006805460ff60a81b19169055565b33610f1d5f546001600160a01b031690565b6001600160a01b031614610f435760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b038116610f695760405162461bcd60e51b815260040161083290612786565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b33610f9d5f546001600160a01b031690565b6001600160a01b031614610fc35760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b038116610fe95760405162461bcd60e51b815260040161083290612786565b600580546001600160a01b0319166001600160a01b0392909216919091179055565b3361101d5f546001600160a01b031690565b6001600160a01b0316146110435760405162461bcd60e51b8152600401610832906126ee565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b0316036110c45760405162461bcd60e51b815260206004820152601a60248201527f54686520706169722063616e6e6f742062652072656d6f7665640000000000006044820152606401610832565b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b5f6107a0338484611806565b3361110c5f546001600160a01b031690565b6001600160a01b0316146111325760405162461bcd60e51b8152600401610832906126ee565b600654600160b01b900460ff161561115c5760405162461bcd60e51b8152600401610832906127b6565b305f8181526007602052604080822054600654915163f305d71960e01b8152600481019490945260248401526044830182905260648301919091526001600160a01b031660848201524260a4820152737a250d5630b4cf539739df2c5dacb4c659f2488d9063f305d71990349060c40160606040518083038185885af11580156111e8573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610a4491906127e0565b3361121f5f546001600160a01b031690565b6001600160a01b0316146112455760405162461bcd60e51b8152600401610832906126ee565b6040516370a0823160e01b81523060048201525f906001600160a01b038416906370a0823190602401602060405180830381865afa158015611289573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112ad919061280b565b9050610a44838383611f6b565b336112cc5f546001600160a01b031690565b6001600160a01b0316146112f25760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b03811661133a5760405162461bcd60e51b815260206004820152600f60248201526e496e76616c6964206164647265737360881b6044820152606401610832565b5f816001600160a01b0316476040515f6040518083038185875af1925050503d805f8114611383576040519150601f19603f3d011682016040523d82523d5f602084013e611388565b606091505b50509050806113cd5760405162461bcd60e51b815260206004820152601160248201527015da5d1a191c985dd85b0819985a5b1959607a1b6044820152606401610832565b5050565b336113e35f546001600160a01b031690565b6001600160a01b0316146114095760405162461bcd60e51b8152600401610832906126ee565b600654600160b01b900460ff16156114335760405162461bcd60e51b8152600401610832906127b6565b5f5b8251811015610a445781818151811061145057611450612822565b602002602001015160075f336001600160a01b03166001600160a01b031681526020019081526020015f2054101561149a5760405162461bcd60e51b815260040161083290612836565b8181815181106114ac576114ac612822565b602002602001015160075f8584815181106114c9576114c9612822565b60200260200101516001600160a01b03166001600160a01b031681526020019081526020015f205f8282546114fe919061287c565b9250508190555081818151811061151757611517612822565b602002602001015160075f336001600160a01b03166001600160a01b031681526020019081526020015f205f828254611550919061288f565b9250508190555082818151811061156957611569612822565b60200260200101516001600160a01b0316336001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8484815181106115b7576115b7612822565b60200260200101516040516115ce91815260200190565b60405180910390a3600101611435565b336115f05f546001600160a01b031690565b6001600160a01b0316146116165760405162461bcd60e51b8152600401610832906126ee565b6001600160a01b03811661163c5760405162461bcd60e51b815260040161083290612786565b600480546001600160a01b03909216650100000000000265010000000000600160c81b0319909216919091179055565b3361167e5f546001600160a01b031690565b6001600160a01b0316146116a45760405162461bcd60e51b8152600401610832906126ee565b600654600160b01b900460ff16156116ce5760405162461bcd60e51b8152600401610832906127b6565b6006805460ff60b01b1916600160b01b179055565b6001600160a01b0383166117455760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610832565b6001600160a01b0382166117a65760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610832565b6001600160a01b038381165f8181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661186a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610832565b6001600160a01b0382166118cc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610832565b5f811161192d5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610832565b600654600160b01b900460ff1615801561198157505f546001600160a01b0384811691161480159061196857506001600160a01b0383163014155b801561198157505f546001600160a01b03838116911614155b156119c45760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b6044820152606401610832565b600654600160a81b900460ff1615611c85575f546001600160a01b03848116911614801590611a0057505f546001600160a01b03838116911614155b8015611a1457506001600160a01b03821615155b8015611a2b57506001600160a01b03821661dead14155b8015611a415750600654600160a01b900460ff16155b15611c85576001600160a01b0383165f908152600b602052604090205460ff168015611a8557506001600160a01b0382165f908152600a602052604090205460ff16155b15611b5857600154811115611aea5760405162461bcd60e51b815260206004820152602560248201527f427579207472616e7366657220616d6f756e74206578636565647320746865206044820152640dac2f0a8f60db1b6064820152608401610832565b6002546001600160a01b0383165f90815260076020526040902054611b0f908361287c565b1115611b535760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610832565b611c85565b6001600160a01b0382165f908152600b602052604090205460ff168015611b9757506001600160a01b0383165f908152600a602052604090205460ff16155b15611bfd57600154811115611b535760405162461bcd60e51b815260206004820152602660248201527f53656c6c207472616e7366657220616d6f756e74206578636565647320746865604482015265040dac2f0a8f60d31b6064820152608401610832565b6001600160a01b0382165f908152600a602052604090205460ff16611c85576002546001600160a01b0383165f90815260076020526040902054611c41908361287c565b1115611c855760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610832565b600354305f90815260076020526040902054108015908190611cb15750600654600160a01b900460ff16155b8015611cd557506001600160a01b0384165f908152600b602052604090205460ff16155b8015611cf957506001600160a01b0384165f9081526009602052604090205460ff16155b8015611d1d57506001600160a01b0383165f9081526009602052604090205460ff16155b15611d4b576006805460ff60a01b1916600160a01b179055611d3d612092565b6006805460ff60a01b191690555b6006546001600160a01b0385165f9081526009602052604090205460ff600160a01b909204821615911680611d9757506001600160a01b0384165f9081526009602052604090205460ff165b15611d9f57505f5b6001600160a01b0385165f9081526007602052604090205483811015611dd75760405162461bcd60e51b815260040161083290612836565b5f8215611ef9576001600160a01b0386165f908152600b602052604090205460ff168015611e0e5750600454610100900460ff1615155b15611e3c57600454606490611e2b90610100900460ff1687612737565b611e35919061274e565b9050611e8c565b6001600160a01b0387165f908152600b602052604090205460ff168015611e67575060045460ff1615155b15611e8c57600454606490611e7f9060ff1687612737565b611e89919061274e565b90505b8015611ef9576001600160a01b0387165f8181526007602090815260408083208054869003905530808452928190208054860190555184815297849003979192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35b6001600160a01b038088165f8181526007602052604080822080548a900390559289168082529083902080548901905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611f5a9089815260200190565b60405180910390a350505050505050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b17905291515f92839290871691611fc691906128a2565b5f604051808303815f865af19150503d805f8114611fff576040519150601f19603f3d011682016040523d82523d5f602084013e612004565b606091505b509150915081801561202e57508051158061202e57508080602001905181019061202e91906128b8565b61208b5760405162461bcd60e51b815260206004820152602860248201527f5472616e7366657248656c7065723a20494e5445524e414c205452414e5346456044820152671497d1905253115160c21b6064820152608401610832565b5050505050565b6003545f6120a1826014612737565b305f9081526007602052604090205411156120c7576003546120c4906014612737565b91505b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106120fa576120fa612822565b60200260200101906001600160a01b031690816001600160a01b03168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc28160018151811061214257612142612822565b6001600160a01b039092166020928302919091019091015260405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac947906121999086905f908690309042906004016128d3565b5f604051808303815f87803b1580156121b0575f80fd5b505af11580156121c2573d5f803e3d5ffd5b504792505081159050612384576004545f906064906121ea9062010000900460ff1684612737565b6121f4919061274e565b6004549091505f9060649061221490640100000000900460ff1685612737565b61221e919061274e565b90505f8161222c848661288f565b612236919061288f565b6006546040519192506001600160a01b03169083905f81818185875af1925050503d805f8114612281576040519150601f19603f3d011682016040523d82523d5f602084013e612286565b606091505b50506005546040519197506001600160a01b03169082905f81818185875af1925050503d805f81146122d3576040519150601f19603f3d011682016040523d82523d5f602084013e6122d8565b606091505b50506004546040519197506501000000000090046001600160a01b03169084905f81818185875af1925050503d805f811461232e576040519150601f19603f3d011682016040523d82523d5f602084013e612333565b606091505b50506040805189815260208101859052908101859052606081018390529096507f93efcf28fbf701a930e0ad258987a2e4f08eb3aa99f9c02029e7ba049f69405f9060800160405180910390a15050505b50505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b80356001600160a01b03811681146123d5575f80fd5b919050565b5f80604083850312156123eb575f80fd5b6123f4836123bf565b946020939093013593505050565b5f805f60608486031215612414575f80fd5b61241d846123bf565b925061242b602085016123bf565b9150604084013590509250925092565b5f6020828403121561244b575f80fd5b5035919050565b803560ff811681146123d5575f80fd5b5f805f60608486031215612474575f80fd5b61247d84612452565b925061248b60208501612452565b915061249960408501612452565b90509250925092565b5f80604083850312156124b3575f80fd5b6124bc83612452565b91506124ca60208401612452565b90509250929050565b80151581146124e0575f80fd5b50565b5f80604083850312156124f4575f80fd5b6124fd836123bf565b9150602083013561250d816124d3565b809150509250929050565b5f60208284031215612528575f80fd5b612531826123bf565b9392505050565b5f8060408385031215612549575f80fd5b612552836123bf565b91506124ca602084016123bf565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561259d5761259d612560565b604052919050565b5f67ffffffffffffffff8211156125be576125be612560565b5060051b60200190565b5f82601f8301126125d7575f80fd5b813560206125ec6125e7836125a5565b612574565b8083825260208201915060208460051b87010193508684111561260d575f80fd5b602086015b848110156126295780358352918301918301612612565b509695505050505050565b5f8060408385031215612645575f80fd5b823567ffffffffffffffff8082111561265c575f80fd5b818501915085601f83011261266f575f80fd5b8135602061267f6125e7836125a5565b82815260059290921b8401810191818101908984111561269d575f80fd5b948201945b838610156126c2576126b3866123bf565b825294820194908201906126a2565b965050860135925050808211156126d7575f80fd5b506126e4858286016125c8565b9150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176107a4576107a4612723565b5f8261276857634e487b7160e01b5f52601260045260245ffd5b500490565b60ff81811683821601908111156107a4576107a4612723565b602080825260169082015275416464726573732063616e6e6f74206265207a65726f60501b604082015260600190565b60208082526010908201526f105b1c9958591e481b185d5b98da195960821b604082015260600190565b5f805f606084860312156127f2575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561281b575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b60208082526026908201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604082015265616c616e636560d01b606082015260800190565b808201808211156107a4576107a4612723565b818103818111156107a4576107a4612723565b5f82518060208501845e5f920191825250919050565b5f602082840312156128c8575f80fd5b8151612531816124d3565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156129235784516001600160a01b0316835293830193918301916001016128fe565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212207a1f031a90a49941262cb932910edad10eea908a4c0e5334c842ff3fec43c9dc64736f6c634300081900334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef