0x608060405234801561000f575f80fd5b5060043610610111575f3560e01c8063b5998a061161009e578063dad8a0321161006e578063dad8a03214610259578063ed537cf71461026e578063eebec56014610285578063ef973d4714610298578063f2fde38b146102a1575f80fd5b8063b5998a06146101fb578063be11e7061461020e578063ca535c3b14610221578063cdd78cfc14610246575f80fd5b8063715018a6116100e4578063715018a6146101965780637e7a560f1461019e5780638da5cb5b146101c557806396270888146101d5578063b17acdcd146101e8575f80fd5b80631694505e1461011557806335544e06146101595780633fc16c0c1461016e5780634a719bd414610183575b5f80fd5b61013c7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b0390911681526020015b60405180910390f35b6101616102b4565b604051610150919061125b565b61018161017c3660046113c3565b610328565b005b61018161019136600461147d565b610559565b61018161056d565b61013c7f0000000000000000000000006fdb90535c09b82825e38d41edf5e66211d4b44281565b5f546001600160a01b031661013c565b6101816101e336600461147d565b610580565b6101816101f636600461147d565b6105a0565b610181610209366004611494565b6106b2565b61018161021c3660046114bc565b61071e565b5f5461023490600160a81b900460ff1681565b60405160ff9091168152602001610150565b5f5461023490600160a01b900460ff1681565b610261610785565b60405161015091906114d5565b61027760045481565b604051908152602001610150565b6101816102933660046113c3565b6107ef565b61027760015481565b6101816102af36600461152a565b6109b8565b60606003805480602002602001604051908101604052809291908181526020015f905b8282101561031f575f84815260209081902060408051808201909152908401546001600160a01b0381168252600160a01b900460ff16818301528252600190920191016102d7565b50505050905090565b6103306109f2565b80518251146103bd5760405162461bcd60e51b815260206004820152604860248201527f5969656c644d61676e657446656548616e646c65723a204e6f206f662061646460448201527f7265737320616e64204e6f206f662050657263656e746167657320646f65736e60648201526704ee840dac2e8c6d60c31b608482015260a4015b60405180910390fd5b606091505f805b8351811015610500575f8382815181106103e0576103e0611543565b602002602001015160ff16101580156104165750606483828151811061040857610408611543565b602002602001015160ff1611155b6104325760405162461bcd60e51b81526004016103b490611557565b6002604051806040016040528086848151811061045157610451611543565b60200260200101516001600160a01b0316815260200185848151811061047957610479611543565b60209081029190910181015160ff90811690925283546001810185555f948552938190208351940180549390910151909116600160a01b026001600160a81b03199092166001600160a01b039093169290921717905582518390829081106104e3576104e3611543565b6020026020010151826104f691906115c8565b91506001016103c4565b508060ff166064146105545760405162461bcd60e51b815260206004820152601f60248201527f546f74616c2050657263656e746167652073686f756c64206265203130302e0060448201526064016103b4565b505050565b6105616109f2565b61056a81610a1e565b50565b6105756109f2565b61057e5f610b62565b565b6105886109f2565b61059a81670de0b6b3a76400006115e1565b60015550565b7f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26105d66001600160a01b038216333085610bb1565b6001546040516370a0823160e01b81523060048201526001600160a01b038316906370a0823190602401602060405180830381865afa15801561061b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061063f91906115f8565b106106ae576040516370a0823160e01b81523060048201526106ae906001600160a01b038316906370a0823190602401602060405180830381865afa15801561068a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061019191906115f8565b5050565b6106ba6109f2565b5f81116107095760405162461bcd60e51b815260206004820152601e60248201527f5969656c644d61676e65743a20616d6f756e742063616e27742062652030000060448201526064016103b4565b816105546001600160a01b0382163384610c1e565b6107266109f2565b60648160ff16111561074a5760405162461bcd60e51b81526004016103b490611557565b61075581606461160f565b5f805461ffff60a01b1916600160a01b60ff9384160260ff60a81b191617600160a81b9390921692909202179055565b60606002805480602002602001604051908101604052809291908181526020015f908282101561031f575f84815260209081902060408051808201909152908401546001600160a01b0381168252600160a01b900460ff16818301528252600190920191016102d7565b6107f76109f2565b805182511461086e5760405162461bcd60e51b815260206004820152603a60248201527f4e756d626572206f66206164647265737320616e64204e756d626572206f662060448201527f50657263656e746167657320646f65736e2774206d617463682e00000000000060648201526084016103b4565b61087960035f611222565b5f805b8351811015610500575f83828151811061089857610898611543565b602002602001015160ff16101580156108ce575060648382815181106108c0576108c0611543565b602002602001015160ff1611155b6108ea5760405162461bcd60e51b81526004016103b490611557565b6003604051806040016040528086848151811061090957610909611543565b60200260200101516001600160a01b0316815260200185848151811061093157610931611543565b60209081029190910181015160ff90811690925283546001810185555f948552938190208351940180549390910151909116600160a01b026001600160a81b03199092166001600160a01b0390931692909217179055825183908290811061099b5761099b611543565b6020026020010151826109ae91906115c8565b915060010161087c565b6109c06109f2565b6001600160a01b0381166109e957604051631e4fbdf760e01b81525f60048201526024016103b4565b61056a81610b62565b5f546001600160a01b0316331461057e5760405163118cdaa760e01b81523360048201526024016103b4565b6040516370a0823160e01b81523060048201527f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc29082906001600160a01b038316906370a0823190602401602060405180830381865afa158015610a84573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aa891906115f8565b1015610af65760405162461bcd60e51b815260206004820152601a60248201527f42616c616e6365206973206e6f742073756666696369656e742100000000000060448201526064016103b4565b5f8054606490610b11908590600160a01b900460ff166115e1565b610b1b9190611628565b5f805491925090606490610b3a908690600160a81b900460ff166115e1565b610b449190611628565b9050610b4f82610c4f565b610b5881610d01565b5050426004555050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6040516001600160a01b038481166024830152838116604483015260648201839052610c189186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b03838183161783525050505061108b565b50505050565b6040516001600160a01b0383811660248301526044820183905261055491859182169063a9059cbb90606401610be6565b7f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc25f5b600354811015610554575f60038281548110610c9057610c90611543565b5f9182526020808320604080518082019091529201546001600160a01b0381168352600160a01b900460ff16908201819052909250606490610cd39087906115e1565b610cdd9190611628565b8251909150610cf7906001600160a01b0386169083610c1e565b5050600101610c72565b60405163095ea7b360e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81166004830152602482018390527f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2919082169063095ea7b3906044016020604051808303815f875af1158015610d90573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610db49190611647565b506040805160028082526060820183525f926020830190803683370190505090507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2815f81518110610e0857610e08611543565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000006fdb90535c09b82825e38d41edf5e66211d4b44281600181518110610e5c57610e5c611543565b6001600160a01b039283166020918202929092010152604051635c11d79560e01b81527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d90911690635c11d79590610ec09086905f90869030904290600401611666565b5f604051808303815f87803b158015610ed7575f80fd5b505af1158015610ee9573d5f803e3d5ffd5b50506040516370a0823160e01b81523060048201525f92507f0000000000000000000000006fdb90535c09b82825e38d41edf5e66211d4b4426001600160a01b031691506370a0823190602401602060405180830381865afa158015610f51573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7591906115f8565b90505f5b600254811015611084575f60028281548110610f9757610f97611543565b5f9182526020808320604080518082019091529201546001600160a01b0381168352600160a01b900460ff16908201819052909250606490610fda9086906115e1565b610fe49190611628565b825160405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529192507f0000000000000000000000006fdb90535c09b82825e38d41edf5e66211d4b442169063a9059cbb906044016020604051808303815f875af1158015611055573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110799190611647565b505050600101610f79565b5050505050565b5f61109f6001600160a01b038416836110ec565b905080515f141580156110c35750808060200190518101906110c19190611647565b155b1561055457604051635274afe760e01b81526001600160a01b03841660048201526024016103b4565b60606110f983835f611102565b90505b92915050565b6060814710156111275760405163cd78605960e01b81523060048201526024016103b4565b5f80856001600160a01b0316848660405161114291906116d7565b5f6040518083038185875af1925050503d805f811461117c576040519150601f19603f3d011682016040523d82523d5f602084013e611181565b606091505b509150915061119186838361119d565b925050505b9392505050565b6060826111b2576111ad826111f9565b611196565b81511580156111c957506001600160a01b0384163b155b156111f257604051639996b31560e01b81526001600160a01b03851660048201526024016103b4565b5080611196565b8051156112095780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b5080545f8255905f5260205f209081019061056a91905b808211156112575780546001600160a81b0319168155600101611239565b5090565b602080825282518282018190525f919060409081850190868401855b828110156112b0576112a084835180516001600160a01b0316825260209081015160ff16910152565b9284019290850190600101611277565b5091979650505050505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156112fa576112fa6112bd565b604052919050565b5f67ffffffffffffffff82111561131b5761131b6112bd565b5060051b60200190565b80356001600160a01b038116811461133b575f80fd5b919050565b803560ff8116811461133b575f80fd5b5f82601f83011261135f575f80fd5b8135602061137461136f83611302565b6112d1565b8083825260208201915060208460051b870101935086841115611395575f80fd5b602086015b848110156113b8576113ab81611340565b835291830191830161139a565b509695505050505050565b5f80604083850312156113d4575f80fd5b823567ffffffffffffffff808211156113eb575f80fd5b818501915085601f8301126113fe575f80fd5b8135602061140e61136f83611302565b82815260059290921b8401810191818101908984111561142c575f80fd5b948201945b838610156114515761144286611325565b82529482019490820190611431565b96505086013592505080821115611466575f80fd5b5061147385828601611350565b9150509250929050565b5f6020828403121561148d575f80fd5b5035919050565b5f80604083850312156114a5575f80fd5b6114ae83611325565b946020939093013593505050565b5f602082840312156114cc575f80fd5b6110f982611340565b602080825282518282018190525f919060409081850190868401855b828110156112b05761151a84835180516001600160a01b0316825260209081015160ff16910152565b92840192908501906001016114f1565b5f6020828403121561153a575f80fd5b6110f982611325565b634e487b7160e01b5f52603260045260245ffd5b6020808252603e908201527f5969656c644d61676e657446656548616e646c65723a2070657263656e74616760408201527f652073686f756c64206265206265747765656e20203020746f20313030210000606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b60ff81811683821601908111156110fc576110fc6115b4565b80820281158282048414176110fc576110fc6115b4565b5f60208284031215611608575f80fd5b5051919050565b60ff82811682821603908111156110fc576110fc6115b4565b5f8261164257634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215611657575f80fd5b81518015158114611196575f80fd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156116b65784516001600160a01b031683529383019391830191600101611691565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82515f5b818110156116f657602081860181015185830152016116dc565b505f92019182525091905056fea2646970667358221220ab995ff0c52a958eff3f4a796c1ae0d62d969856e453d83e8908fc836f5890e964736f6c63430008160033
0x60e06040525f805461ffff60a01b191661191960a11b1790556a0422ca8b0a00a4250000006001554260045534801562000037575f80fd5b5060405162001a6038038062001a608339810160408190526200005a9162000264565b33806200008057604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b6200008b81620001f9565b506001600160a01b0380831660805260408051808201825283831681526064602080830182815260028054600181810183555f92835295517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace9091018054935160ff908116600160a01b9081026001600160a81b0319968716948c1694909417939093179091558751808901895233815280860196875260038054988901815590935291517fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b909601805495519092160293909116939095169290921717909255737a250d5630b4cf539739df2c5dacb4c659f2488d60a081905281516315ab88c960e31b815291519092839263ad5c464892600480830193928290030181865afa158015620001bd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001e391906200029a565b6001600160a01b031660c05250620002bd915050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b03811681146200025f575f80fd5b919050565b5f806040838503121562000276575f80fd5b620002818362000248565b9150620002916020840162000248565b90509250929050565b5f60208284031215620002ab575f80fd5b620002b68262000248565b9392505050565b60805160a05160c051611739620003275f395f81816105a201528181610a3301528181610c5101528181610d470152610dd701525f818161011a01528181610d180152610e8101525f81816101a301528181610e2a01528181610f03015261100f01526117395ff3fe608060405234801561000f575f80fd5b5060043610610111575f3560e01c8063b5998a061161009e578063dad8a0321161006e578063dad8a03214610259578063ed537cf71461026e578063eebec56014610285578063ef973d4714610298578063f2fde38b146102a1575f80fd5b8063b5998a06146101fb578063be11e7061461020e578063ca535c3b14610221578063cdd78cfc14610246575f80fd5b8063715018a6116100e4578063715018a6146101965780637e7a560f1461019e5780638da5cb5b146101c557806396270888146101d5578063b17acdcd146101e8575f80fd5b80631694505e1461011557806335544e06146101595780633fc16c0c1461016e5780634a719bd414610183575b5f80fd5b61013c7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6101616102b4565b604051610150919061125b565b61018161017c3660046113c3565b610328565b005b61018161019136600461147d565b610559565b61018161056d565b61013c7f000000000000000000000000000000000000000000000000000000000000000081565b5f546001600160a01b031661013c565b6101816101e336600461147d565b610580565b6101816101f636600461147d565b6105a0565b610181610209366004611494565b6106b2565b61018161021c3660046114bc565b61071e565b5f5461023490600160a81b900460ff1681565b60405160ff9091168152602001610150565b5f5461023490600160a01b900460ff1681565b610261610785565b60405161015091906114d5565b61027760045481565b604051908152602001610150565b6101816102933660046113c3565b6107ef565b61027760015481565b6101816102af36600461152a565b6109b8565b60606003805480602002602001604051908101604052809291908181526020015f905b8282101561031f575f84815260209081902060408051808201909152908401546001600160a01b0381168252600160a01b900460ff16818301528252600190920191016102d7565b50505050905090565b6103306109f2565b80518251146103bd5760405162461bcd60e51b815260206004820152604860248201527f5969656c644d61676e657446656548616e646c65723a204e6f206f662061646460448201527f7265737320616e64204e6f206f662050657263656e746167657320646f65736e60648201526704ee840dac2e8c6d60c31b608482015260a4015b60405180910390fd5b606091505f805b8351811015610500575f8382815181106103e0576103e0611543565b602002602001015160ff16101580156104165750606483828151811061040857610408611543565b602002602001015160ff1611155b6104325760405162461bcd60e51b81526004016103b490611557565b6002604051806040016040528086848151811061045157610451611543565b60200260200101516001600160a01b0316815260200185848151811061047957610479611543565b60209081029190910181015160ff90811690925283546001810185555f948552938190208351940180549390910151909116600160a01b026001600160a81b03199092166001600160a01b039093169290921717905582518390829081106104e3576104e3611543565b6020026020010151826104f691906115c8565b91506001016103c4565b508060ff166064146105545760405162461bcd60e51b815260206004820152601f60248201527f546f74616c2050657263656e746167652073686f756c64206265203130302e0060448201526064016103b4565b505050565b6105616109f2565b61056a81610a1e565b50565b6105756109f2565b61057e5f610b62565b565b6105886109f2565b61059a81670de0b6b3a76400006115e1565b60015550565b7f00000000000000000000000000000000000000000000000000000000000000006105d66001600160a01b038216333085610bb1565b6001546040516370a0823160e01b81523060048201526001600160a01b038316906370a0823190602401602060405180830381865afa15801561061b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061063f91906115f8565b106106ae576040516370a0823160e01b81523060048201526106ae906001600160a01b038316906370a0823190602401602060405180830381865afa15801561068a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061019191906115f8565b5050565b6106ba6109f2565b5f81116107095760405162461bcd60e51b815260206004820152601e60248201527f5969656c644d61676e65743a20616d6f756e742063616e27742062652030000060448201526064016103b4565b816105546001600160a01b0382163384610c1e565b6107266109f2565b60648160ff16111561074a5760405162461bcd60e51b81526004016103b490611557565b61075581606461160f565b5f805461ffff60a01b1916600160a01b60ff9384160260ff60a81b191617600160a81b9390921692909202179055565b60606002805480602002602001604051908101604052809291908181526020015f908282101561031f575f84815260209081902060408051808201909152908401546001600160a01b0381168252600160a01b900460ff16818301528252600190920191016102d7565b6107f76109f2565b805182511461086e5760405162461bcd60e51b815260206004820152603a60248201527f4e756d626572206f66206164647265737320616e64204e756d626572206f662060448201527f50657263656e746167657320646f65736e2774206d617463682e00000000000060648201526084016103b4565b61087960035f611222565b5f805b8351811015610500575f83828151811061089857610898611543565b602002602001015160ff16101580156108ce575060648382815181106108c0576108c0611543565b602002602001015160ff1611155b6108ea5760405162461bcd60e51b81526004016103b490611557565b6003604051806040016040528086848151811061090957610909611543565b60200260200101516001600160a01b0316815260200185848151811061093157610931611543565b60209081029190910181015160ff90811690925283546001810185555f948552938190208351940180549390910151909116600160a01b026001600160a81b03199092166001600160a01b0390931692909217179055825183908290811061099b5761099b611543565b6020026020010151826109ae91906115c8565b915060010161087c565b6109c06109f2565b6001600160a01b0381166109e957604051631e4fbdf760e01b81525f60048201526024016103b4565b61056a81610b62565b5f546001600160a01b0316331461057e5760405163118cdaa760e01b81523360048201526024016103b4565b6040516370a0823160e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000009082906001600160a01b038316906370a0823190602401602060405180830381865afa158015610a84573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610aa891906115f8565b1015610af65760405162461bcd60e51b815260206004820152601a60248201527f42616c616e6365206973206e6f742073756666696369656e742100000000000060448201526064016103b4565b5f8054606490610b11908590600160a01b900460ff166115e1565b610b1b9190611628565b5f805491925090606490610b3a908690600160a81b900460ff166115e1565b610b449190611628565b9050610b4f82610c4f565b610b5881610d01565b5050426004555050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6040516001600160a01b038481166024830152838116604483015260648201839052610c189186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b03838183161783525050505061108b565b50505050565b6040516001600160a01b0383811660248301526044820183905261055491859182169063a9059cbb90606401610be6565b7f00000000000000000000000000000000000000000000000000000000000000005f5b600354811015610554575f60038281548110610c9057610c90611543565b5f9182526020808320604080518082019091529201546001600160a01b0381168352600160a01b900460ff16908201819052909250606490610cd39087906115e1565b610cdd9190611628565b8251909150610cf7906001600160a01b0386169083610c1e565b5050600101610c72565b60405163095ea7b360e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000919082169063095ea7b3906044016020604051808303815f875af1158015610d90573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610db49190611647565b506040805160028082526060820183525f926020830190803683370190505090507f0000000000000000000000000000000000000000000000000000000000000000815f81518110610e0857610e08611543565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610e5c57610e5c611543565b6001600160a01b039283166020918202929092010152604051635c11d79560e01b81527f000000000000000000000000000000000000000000000000000000000000000090911690635c11d79590610ec09086905f90869030904290600401611666565b5f604051808303815f87803b158015610ed7575f80fd5b505af1158015610ee9573d5f803e3d5ffd5b50506040516370a0823160e01b81523060048201525f92507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031691506370a0823190602401602060405180830381865afa158015610f51573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f7591906115f8565b90505f5b600254811015611084575f60028281548110610f9757610f97611543565b5f9182526020808320604080518082019091529201546001600160a01b0381168352600160a01b900460ff16908201819052909250606490610fda9086906115e1565b610fe49190611628565b825160405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529192507f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303815f875af1158015611055573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110799190611647565b505050600101610f79565b5050505050565b5f61109f6001600160a01b038416836110ec565b905080515f141580156110c35750808060200190518101906110c19190611647565b155b1561055457604051635274afe760e01b81526001600160a01b03841660048201526024016103b4565b60606110f983835f611102565b90505b92915050565b6060814710156111275760405163cd78605960e01b81523060048201526024016103b4565b5f80856001600160a01b0316848660405161114291906116d7565b5f6040518083038185875af1925050503d805f811461117c576040519150601f19603f3d011682016040523d82523d5f602084013e611181565b606091505b509150915061119186838361119d565b925050505b9392505050565b6060826111b2576111ad826111f9565b611196565b81511580156111c957506001600160a01b0384163b155b156111f257604051639996b31560e01b81526001600160a01b03851660048201526024016103b4565b5080611196565b8051156112095780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b5080545f8255905f5260205f209081019061056a91905b808211156112575780546001600160a81b0319168155600101611239565b5090565b602080825282518282018190525f919060409081850190868401855b828110156112b0576112a084835180516001600160a01b0316825260209081015160ff16910152565b9284019290850190600101611277565b5091979650505050505050565b634e487b7160e01b5f52604160045260245ffd5b604051601f8201601f1916810167ffffffffffffffff811182821017156112fa576112fa6112bd565b604052919050565b5f67ffffffffffffffff82111561131b5761131b6112bd565b5060051b60200190565b80356001600160a01b038116811461133b575f80fd5b919050565b803560ff8116811461133b575f80fd5b5f82601f83011261135f575f80fd5b8135602061137461136f83611302565b6112d1565b8083825260208201915060208460051b870101935086841115611395575f80fd5b602086015b848110156113b8576113ab81611340565b835291830191830161139a565b509695505050505050565b5f80604083850312156113d4575f80fd5b823567ffffffffffffffff808211156113eb575f80fd5b818501915085601f8301126113fe575f80fd5b8135602061140e61136f83611302565b82815260059290921b8401810191818101908984111561142c575f80fd5b948201945b838610156114515761144286611325565b82529482019490820190611431565b96505086013592505080821115611466575f80fd5b5061147385828601611350565b9150509250929050565b5f6020828403121561148d575f80fd5b5035919050565b5f80604083850312156114a5575f80fd5b6114ae83611325565b946020939093013593505050565b5f602082840312156114cc575f80fd5b6110f982611340565b602080825282518282018190525f919060409081850190868401855b828110156112b05761151a84835180516001600160a01b0316825260209081015160ff16910152565b92840192908501906001016114f1565b5f6020828403121561153a575f80fd5b6110f982611325565b634e487b7160e01b5f52603260045260245ffd5b6020808252603e908201527f5969656c644d61676e657446656548616e646c65723a2070657263656e74616760408201527f652073686f756c64206265206265747765656e20203020746f20313030210000606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b60ff81811683821601908111156110fc576110fc6115b4565b80820281158282048414176110fc576110fc6115b4565b5f60208284031215611608575f80fd5b5051919050565b60ff82811682821603908111156110fc576110fc6115b4565b5f8261164257634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215611657575f80fd5b81518015158114611196575f80fd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156116b65784516001600160a01b031683529383019391830191600101611691565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82515f5b818110156116f657602081860181015185830152016116dc565b505f92019182525091905056fea2646970667358221220ab995ff0c52a958eff3f4a796c1ae0d62d969856e453d83e8908fc836f5890e964736f6c634300081600330000000000000000000000006fdb90535c09b82825e38d41edf5e66211d4b4420000000000000000000000003bcb66adbf3c0f9558bc90dea7bb0684164e5633