60806040523480156200001157600080fd5b5060405162003124380380620031248339810160408190526200003491620005a5565b6040518060400160405280601881526020017f42616e6469747320496e20546865204d65746176657273650000000000000000815250604051806040016040528060048152602001634249544d60e01b815250600062000099620001a260201b60201c565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508151620000f8906001906020850190620004ff565b5080516200010e906002906020840190620004ff565b5050600980546658d15e17628000600a5565ffffffffffff1916640300850d0517905550600b80546001600160a01b0319166001600160a01b03831617905560006200015d60075461ffff1690565b90506200016f3361ffff8316620001a6565b600754620001839061ffff1660016200067e565b6007805461ffff191661ffff9290921691909117905550620007159050565b3390565b620001c8828260405180602001604052806000815250620001cc60201b60201c565b5050565b620001d8838362000248565b620001e7600084848462000390565b620002435760405162461bcd60e51b815260206004820152603260248201526000805160206200310483398151915260448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084015b60405180910390fd5b505050565b6001600160a01b038216620002a05760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016200023a565b6000818152600360205260409020546001600160a01b031615620003075760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016200023a565b6001600160a01b038216600090815260046020526040812080546001929062000332908490620006a7565b909155505060008181526003602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b6000620003b1846001600160a01b0316620004f960201b6200197c1760201c565b15620004ed57604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290620003eb90339089908890889060040162000603565b602060405180830381600087803b1580156200040657600080fd5b505af192505050801562000439575060408051601f3d908101601f191682019092526200043691810190620005d7565b60015b620004d2573d8080156200046a576040519150601f19603f3d011682016040523d82523d6000602084013e6200046f565b606091505b508051620004ca5760405162461bcd60e51b815260206004820152603260248201526000805160206200310483398151915260448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016200023a565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050620004f1565b5060015b949350505050565b3b151590565b8280546200050d90620006c2565b90600052602060002090601f0160209004810192826200053157600085556200057c565b82601f106200054c57805160ff19168380011785556200057c565b828001600101855582156200057c579182015b828111156200057c5782518255916020019190600101906200055f565b506200058a9291506200058e565b5090565b5b808211156200058a57600081556001016200058f565b600060208284031215620005b857600080fd5b81516001600160a01b0381168114620005d057600080fd5b9392505050565b600060208284031215620005ea57600080fd5b81516001600160e01b031981168114620005d057600080fd5b600060018060a01b038087168352602081871681850152856040850152608060608501528451915081608085015260005b82811015620006525785810182015185820160a00152810162000634565b828111156200066557600060a084870101525b5050601f01601f19169190910160a00195945050505050565b600061ffff8083168185168083038211156200069e576200069e620006ff565b01949350505050565b60008219821115620006bd57620006bd620006ff565b500190565b600181811c90821680620006d757607f821691505b60208210811415620006f957634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b6129df80620007256000396000f3fe60806040526004361061023b5760003560e01c806370a082311161012e578063c87b56dd116100ab578063e985e9c51161006f578063e985e9c5146106d6578063f2fde38b1461071f578063f4a0a5281461073f578063f76fc35e1461075f578063ff260b591461079357600080fd5b8063c87b56dd1461064d578063cc4b99d61461066d578063d347c09c1461068d578063d547cfb7146106a0578063da89dce3146106b557600080fd5b80639d944cd9116100f25780639d944cd9146105ad578063a22cb465146105cd578063b423fe67146105ed578063b88d4fde1461060d578063ba1f879f1461062d57600080fd5b806370a0823114610530578063715018a614610550578063853828b6146105655780638da5cb5b1461057a57806395d89b411461059857600080fd5b806333bc1c5c116101bc57806357e7a6aa1161018057806357e7a6aa1461047e5780635de6dc5514610491578063614d08f8146104be5780636352211e146104fa5780636817c76c1461051a57600080fd5b806333bc1c5c146103dd57806342842e0e146103fe57806342966c681461041e5780634f558e791461043e57806355f804b31461045e57600080fd5b806318160ddd1161020357806318160ddd1461032757806320606b701461034057806323b872dd14610382578063287b038b146103a257806332cb6b0c146103c257600080fd5b806301ffc9a71461024057806306fdde0314610275578063081812fc14610297578063095ea7b3146102cf578063138a4e01146102f1575b600080fd5b34801561024c57600080fd5b5061026061025b3660046124c6565b6107c3565b60405190151581526020015b60405180910390f35b34801561028157600080fd5b5061028a610815565b60405161026c91906126c5565b3480156102a357600080fd5b506102b76102b2366004612573565b6108a7565b6040516001600160a01b03909116815260200161026c565b3480156102db57600080fd5b506102ef6102ea366004612457565b610941565b005b3480156102fd57600080fd5b5060095461031490640100000000900461ffff1681565b60405161ffff909116815260200161026c565b34801561033357600080fd5b5060075461ffff16610314565b34801561034c57600080fd5b506103747f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86681565b60405190815260200161026c565b34801561038e57600080fd5b506102ef61039d366004612375565b610a57565b3480156103ae57600080fd5b506102ef6103bd3660046124ab565b610a89565b3480156103ce57600080fd5b506009546103149061ffff1681565b3480156103e957600080fd5b50600754610260906301000000900460ff1681565b34801561040a57600080fd5b506102ef610419366004612375565b610acf565b34801561042a57600080fd5b506102ef610439366004612573565b610aea565b34801561044a57600080fd5b50610260610459366004612573565b610b78565b34801561046a57600080fd5b506102ef610479366004612500565b610b97565b6102ef61048c36600461258c565b610bd8565b34801561049d57600080fd5b506104b16104ac366004612327565b610deb565b60405161026c9190612681565b3480156104ca57600080fd5b5061028a6040518060400160405280601081526020016f10985b991a5d1cc810dbdb9d1c9858dd60821b81525081565b34801561050657600080fd5b506102b7610515366004612573565b610ef4565b34801561052657600080fd5b50610374600a5481565b34801561053c57600080fd5b5061037461054b366004612327565b610f6b565b34801561055c57600080fd5b506102ef610ff2565b34801561057157600080fd5b506102ef611066565b34801561058657600080fd5b506000546001600160a01b03166102b7565b3480156105a457600080fd5b5061028a6110bf565b3480156105b957600080fd5b506102ef6105c8366004612549565b6110ce565b3480156105d957600080fd5b506102ef6105e836600461242d565b611124565b3480156105f957600080fd5b506102ef6106083660046124ab565b61112f565b34801561061957600080fd5b506102ef6106283660046123b1565b611177565b34801561063957600080fd5b506007546102609062010000900460ff1681565b34801561065957600080fd5b5061028a610668366004612573565b6111af565b34801561067957600080fd5b506102ef610688366004612481565b61128a565b6102ef61069b3660046125a7565b611379565b3480156106ac57600080fd5b5061028a6117d5565b3480156106c157600080fd5b506009546103149062010000900461ffff1681565b3480156106e257600080fd5b506102606106f1366004612342565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205460ff1690565b34801561072b57600080fd5b506102ef61073a366004612327565b611863565b34801561074b57600080fd5b506102ef61075a366004612573565b61194d565b34801561076b57600080fd5b506103747f79800d7a879f6d3ff90ed42057b41065ab94943f7417273b44f9e3044f19617181565b34801561079f57600080fd5b506102606107ae366004612327565b600c6020526000908152604090205460ff1681565b60006001600160e01b031982166380ac58cd60e01b14806107f457506001600160e01b03198216635b5e139f60e01b145b8061080f57506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060018054610824906128d1565b80601f0160208091040260200160405190810160405280929190818152602001828054610850906128d1565b801561089d5780601f106108725761010080835404028352916020019161089d565b820191906000526020600020905b81548152906001019060200180831161088057829003601f168201915b5050505050905090565b6000818152600360205260408120546001600160a01b03166109255760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860448201526b34b9ba32b73a103a37b5b2b760a11b60648201526084015b60405180910390fd5b506000908152600560205260409020546001600160a01b031690565b600061094c82610ef4565b9050806001600160a01b0316836001600160a01b031614156109ba5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b606482015260840161091c565b336001600160a01b03821614806109d657506109d681336106f1565b610a485760405162461bcd60e51b815260206004820152603860248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760448201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000606482015260840161091c565b610a528383611982565b505050565b610a62335b826119f0565b610a7e5760405162461bcd60e51b815260040161091c9061275f565b610a52838383611ae7565b6000546001600160a01b03163314610ab35760405162461bcd60e51b815260040161091c9061272a565b60078054911515620100000262ff000019909216919091179055565b610a5283838360405180602001604052806000815250611177565b6000546001600160a01b0316331480610b075750610b0733610a5c565b610b6c5760405162461bcd60e51b815260206004820152603060248201527f4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f7760448201526f1b995c881b9bdc88185c1c1c9bdd995960821b606482015260840161091c565b610b7581611c83565b50565b6000818152600360205260408120546001600160a01b0316151561080f565b6000546001600160a01b03163314610bc15760405162461bcd60e51b815260040161091c9061272a565b8051610bd49060089060208401906121c9565b5050565b6007546301000000900460ff16610c315760405162461bcd60e51b815260206004820152601960248201527f5075626c69632053616c65206973206e6f742061637469766500000000000000604482015260640161091c565b323314610c6b5760405162461bcd60e51b81526020600482015260086024820152674f6e6c7920454f4160c01b604482015260640161091c565b600954610c849061ffff6201000082048116911661286b565b61ffff168160ff16610c9960075461ffff1690565b610ca391906127de565b61ffff161115610cc55760405162461bcd60e51b815260040161091c906127b0565b600954640100000000900461ffff1660ff82161115610d175760405162461bcd60e51b815260206004820152600e60248201526d115e18d959591cc8105b5bdd5b9d60921b604482015260640161091c565b348160ff16600a54610d29919061284c565b1115610d6b5760405162461bcd60e51b8152602060048201526011602482015270131bddc8141c9a58d948151bc8135a5b9d607a1b604482015260640161091c565b60005b8160ff168160ff161015610dbc5760008160ff16610d8f60075461ffff1690565b610d9991906127de565b9050610da9338261ffff16611d1e565b50610db5600182612813565b9050610d6e565b50600754610dd29060ff83169061ffff166127de565b6007805461ffff191661ffff9290921691909117905550565b60606000610df883610f6b565b90506000610e0960075461ffff1690565b61ffff16905081610e2b57505060408051600081526020810190915292915050565b60008267ffffffffffffffff811115610e4657610e4661297d565b604051908082528060200260200182016040528015610e6f578160200160208202803683370190505b5090506000805b83811015610ee9576000818152600360205260409020546001600160a01b0388811691161415610ed75780838381518110610eb357610eb3612967565b602090810291909101015281610ec88161290c565b925050848210610ed757610ee9565b80610ee18161290c565b915050610e76565b509095945050505050565b6000818152600360205260408120546001600160a01b03168061080f5760405162461bcd60e51b815260206004820152602960248201527f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460448201526832b73a103a37b5b2b760b91b606482015260840161091c565b60006001600160a01b038216610fd65760405162461bcd60e51b815260206004820152602a60248201527f4552433732313a2062616c616e636520717565727920666f7220746865207a65604482015269726f206164647265737360b01b606482015260840161091c565b506001600160a01b031660009081526004602052604090205490565b6000546001600160a01b0316331461101c5760405162461bcd60e51b815260040161091c9061272a565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146110905760405162461bcd60e51b815260040161091c9061272a565b6040514790339082156108fc029083906000818181858888f19350505050158015610bd4573d6000803e3d6000fd5b606060028054610824906128d1565b6000546001600160a01b031633146110f85760405162461bcd60e51b815260040161091c9061272a565b6009805461ffff9283166401000000000265ffff0000ffff199091169290931691909117919091179055565b610bd4338383611d38565b6000546001600160a01b031633146111595760405162461bcd60e51b815260040161091c9061272a565b6007805491151563010000000263ff00000019909216919091179055565b61118133836119f0565b61119d5760405162461bcd60e51b815260040161091c9061275f565b6111a984848484611e07565b50505050565b6000818152600360205260409020546060906001600160a01b031661122e5760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201526e3732bc34b9ba32b73a103a37b5b2b760891b606482015260840161091c565b6000611238611e3a565b905060008151116112585760405180602001604052806000815250611283565b8061126284611e49565b604051602001611273929190612615565b6040516020818303038152906040525b9392505050565b6000546001600160a01b031633146112b45760405162461bcd60e51b815260040161091c9061272a565b60095461ffff1660ff82166112cc60075461ffff1690565b6112d691906127de565b61ffff1611156112f85760405162461bcd60e51b815260040161091c906127b0565b60005b8160ff168160ff1610156113495760008160ff1661131c60075461ffff1690565b61132691906127de565b9050611336848261ffff16611d1e565b50611342600182612813565b90506112fb565b5060075461135f9060ff83169061ffff166127de565b6007805461ffff191661ffff929092169190911790555050565b60075462010000900460ff166113d15760405162461bcd60e51b815260206004820152601a60248201527f507269766174652053616c65206973206e6f7420616374697665000000000000604482015260640161091c565b336000908152600c602052604090205460ff16156114255760405162461bcd60e51b8152602060048201526011602482015270596f75206d696e74656420616c6561647960781b604482015260640161091c565b32331461145f5760405162461bcd60e51b81526020600482015260086024820152674f6e6c7920454f4160c01b604482015260640161091c565b6009546114789061ffff6201000082048116911661286b565b61ffff168460ff1661148d60075461ffff1690565b61149791906127de565b61ffff1611156114b95760405162461bcd60e51b815260040161091c906127b0565b600954640100000000900461ffff1660ff8516111561150b5760405162461bcd60e51b815260206004820152600e60248201526d115e18d959591cc8105b5bdd5b9d60921b604482015260640161091c565b348460ff16600a5461151d919061284c565b111561155f5760405162461bcd60e51b8152602060048201526011602482015270131bddc8141c9a58d948151bc8135a5b9d607a1b604482015260640161091c565b604080518082018252601081526f10985b991a5d1cc810dbdb9d1c9858dd60821b60209182015281517f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a866818301527ff25d48dafea927dd275caba6eb2737a49673cf82973b59acd513048506145bb681840152466060820152306080808301919091528351808303909101815260a0820184528051908301207f79800d7a879f6d3ff90ed42057b41065ab94943f7417273b44f9e3044f19617160c08301523360e083015260ff8816610100808401919091528451808403909101815261012083019094528351939092019290922061190160f01b6101408401526101428301829052610162830181905290916000906101820160408051601f198184030181528282528051602091820120600080855291840180845281905260ff8a169284019290925260608301889052608083018790529092509060019060a0016020604051602081039080840390855afa1580156116de573d6000803e3d6000fd5b5050604051601f190151600b549092506001600160a01b03808416911614905061173e5760405162461bcd60e51b8152602060048201526011602482015270496e76616c6964207369676e61746f727960781b604482015260640161091c565b60005b8860ff168160ff1610156117855760075461177390339061176a9060ff85169061ffff166127de565b61ffff16611d1e565b61177e600182612813565b9050611741565b5060075461179b9060ff8a169061ffff166127de565b6007805461ffff191661ffff929092169190911790555050336000908152600c60205260409020805460ff19166001179055505050505050565b600880546117e2906128d1565b80601f016020809104026020016040519081016040528092919081815260200182805461180e906128d1565b801561185b5780601f106118305761010080835404028352916020019161185b565b820191906000526020600020905b81548152906001019060200180831161183e57829003601f168201915b505050505081565b6000546001600160a01b0316331461188d5760405162461bcd60e51b815260040161091c9061272a565b6001600160a01b0381166118f25760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161091c565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146119775760405162461bcd60e51b815260040161091c9061272a565b600a55565b3b151590565b600081815260056020526040902080546001600160a01b0319166001600160a01b03841690811790915581906119b782610ef4565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000818152600360205260408120546001600160a01b0316611a695760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860448201526b34b9ba32b73a103a37b5b2b760a11b606482015260840161091c565b6000611a7483610ef4565b9050806001600160a01b0316846001600160a01b03161480611aaf5750836001600160a01b0316611aa4846108a7565b6001600160a01b0316145b80611adf57506001600160a01b0380821660009081526006602090815260408083209388168352929052205460ff165b949350505050565b826001600160a01b0316611afa82610ef4565b6001600160a01b031614611b5e5760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b606482015260840161091c565b6001600160a01b038216611bc05760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b606482015260840161091c565b611bcb600082611982565b6001600160a01b0383166000908152600460205260408120805460019290611bf490849061288e565b90915550506001600160a01b0382166000908152600460205260408120805460019290611c229084906127fb565b909155505060008181526003602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6000611c8e82610ef4565b9050611c9b600083611982565b6001600160a01b0381166000908152600460205260408120805460019290611cc490849061288e565b909155505060008281526003602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b610bd4828260405180602001604052806000815250611f47565b816001600160a01b0316836001600160a01b03161415611d9a5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c657200000000000000604482015260640161091c565b6001600160a01b03838116600081815260066020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b611e12848484611ae7565b611e1e84848484611f7a565b6111a95760405162461bcd60e51b815260040161091c906126d8565b606060088054610824906128d1565b606081611e6d5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115611e975780611e818161290c565b9150611e909050600a83612838565b9150611e71565b60008167ffffffffffffffff811115611eb257611eb261297d565b6040519080825280601f01601f191660200182016040528015611edc576020820181803683370190505b5090505b8415611adf57611ef160018361288e565b9150611efe600a86612927565b611f099060306127fb565b60f81b818381518110611f1e57611f1e612967565b60200101906001600160f81b031916908160001a905350611f40600a86612838565b9450611ee0565b611f518383612087565b611f5e6000848484611f7a565b610a525760405162461bcd60e51b815260040161091c906126d8565b60006001600160a01b0384163b1561207c57604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290611fbe903390899088908890600401612644565b602060405180830381600087803b158015611fd857600080fd5b505af1925050508015612008575060408051601f3d908101601f19168201909252612005918101906124e3565b60015b612062573d808015612036576040519150601f19603f3d011682016040523d82523d6000602084013e61203b565b606091505b50805161205a5760405162461bcd60e51b815260040161091c906126d8565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050611adf565b506001949350505050565b6001600160a01b0382166120dd5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f2061646472657373604482015260640161091c565b6000818152600360205260409020546001600160a01b0316156121425760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000604482015260640161091c565b6001600160a01b038216600090815260046020526040812080546001929061216b9084906127fb565b909155505060008181526003602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b8280546121d5906128d1565b90600052602060002090601f0160209004810192826121f7576000855561223d565b82601f1061221057805160ff191683800117855561223d565b8280016001018555821561223d579182015b8281111561223d578251825591602001919060010190612222565b5061224992915061224d565b5090565b5b80821115612249576000815560010161224e565b600067ffffffffffffffff8084111561227d5761227d61297d565b604051601f8501601f19908116603f011681019082821181831017156122a5576122a561297d565b816040528093508581528686860111156122be57600080fd5b858560208301376000602087830101525050509392505050565b80356001600160a01b03811681146122ef57600080fd5b919050565b803580151581146122ef57600080fd5b803561ffff811681146122ef57600080fd5b803560ff811681146122ef57600080fd5b60006020828403121561233957600080fd5b611283826122d8565b6000806040838503121561235557600080fd5b61235e836122d8565b915061236c602084016122d8565b90509250929050565b60008060006060848603121561238a57600080fd5b612393846122d8565b92506123a1602085016122d8565b9150604084013590509250925092565b600080600080608085870312156123c757600080fd5b6123d0856122d8565b93506123de602086016122d8565b925060408501359150606085013567ffffffffffffffff81111561240157600080fd5b8501601f8101871361241257600080fd5b61242187823560208401612262565b91505092959194509250565b6000806040838503121561244057600080fd5b612449836122d8565b915061236c602084016122f4565b6000806040838503121561246a57600080fd5b612473836122d8565b946020939093013593505050565b6000806040838503121561249457600080fd5b61249d836122d8565b915061236c60208401612316565b6000602082840312156124bd57600080fd5b611283826122f4565b6000602082840312156124d857600080fd5b813561128381612993565b6000602082840312156124f557600080fd5b815161128381612993565b60006020828403121561251257600080fd5b813567ffffffffffffffff81111561252957600080fd5b8201601f8101841361253a57600080fd5b611adf84823560208401612262565b6000806040838503121561255c57600080fd5b61256583612304565b915061236c60208401612304565b60006020828403121561258557600080fd5b5035919050565b60006020828403121561259e57600080fd5b61128382612316565b600080600080608085870312156125bd57600080fd5b6125c685612316565b93506125d460208601612316565b93969395505050506040820135916060013590565b600081518084526126018160208601602086016128a5565b601f01601f19169290920160200192915050565b600083516126278184602088016128a5565b83519083019061263b8183602088016128a5565b01949350505050565b6001600160a01b0385811682528416602082015260408101839052608060608201819052600090612677908301846125e9565b9695505050505050565b6020808252825182820181905260009190848201906040850190845b818110156126b95783518352928401929184019160010161269d565b50909695505050505050565b60208152600061128360208301846125e9565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526031908201527f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f6040820152701ddb995c881b9bdc88185c1c1c9bdd9959607a1b606082015260800190565b6020808252601490820152734d6178204c696d697420546f2050726573616c6560601b604082015260600190565b600061ffff80831681851680830382111561263b5761263b61293b565b6000821982111561280e5761280e61293b565b500190565b600060ff821660ff84168060ff038211156128305761283061293b565b019392505050565b60008261284757612847612951565b500490565b60008160001904831182151516156128665761286661293b565b500290565b600061ffff838116908316818110156128865761288661293b565b039392505050565b6000828210156128a0576128a061293b565b500390565b60005b838110156128c05781810151838201526020016128a8565b838111156111a95750506000910152565b600181811c908216806128e557607f821691505b6020821081141561290657634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156129205761292061293b565b5060010190565b60008261293657612936612951565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160e01b031981168114610b7557600080fdfea2646970667358221220d38c3982311fe2cb987224bbeb9336ba30d7234375b7ed91db4f5ece74df542664736f6c634300080700334552433732313a207472616e7366657220746f206e6f6e204552433732315265000000000000000000000000449d685a27161c70e8994967152ba0af3bfc2b00