0x6101606040523480156200001257600080fd5b506040516200341b3803806200341b83398101604081905262000035916200040d565b338480604051806040016040528060018152602001603160f81b8152508787816006908162000065919062000540565b50600762000074828262000540565b50620000869150839050600862000272565b610120526200009781600962000272565b61014052815160208084019190912060e052815190820120610100524660a0526200012560e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b60805250503060c052506001600160a01b0381166200015f57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6200016a81620002ab565b506001600160a01b038116620001d55760405162461bcd60e51b815260206004820152602960248201527f4d6967726174696f6e20636f6e74726163742063616e6e6f74206265207a65726044820152686f206164647265737360b81b606482015260840162000156565b60ff821660009081555b600054811015620002475760028054600190810182556000919091526200020882600a6200071f565b6200021c90670de0b6b3a764000062000734565b81546001810183556000928352602090922090910155806200023e816200074e565b915050620001df565b50600f80546001600160a01b0319166001600160a01b039290921691909117905550620007c4915050565b600060208351101562000292576200028a83620002fd565b9050620002a5565b816200029f848262000540565b5060ff90505b92915050565b600e80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080829050601f815111156200032b578260405163305a27a960e01b81526004016200015691906200076a565b805162000338826200079f565b179392505050565b634e487b7160e01b600052604160045260246000fd5b60005b838110156200037357818101518382015260200162000359565b50506000910152565b600082601f8301126200038e57600080fd5b81516001600160401b0380821115620003ab57620003ab62000340565b604051601f8301601f19908116603f01168101908282118183101715620003d657620003d662000340565b81604052838152866020858801011115620003f057600080fd5b6200040384602083016020890162000356565b9695505050505050565b600080600080608085870312156200042457600080fd5b84516001600160401b03808211156200043c57600080fd5b6200044a888389016200037c565b955060208701519150808211156200046157600080fd5b5062000470878288016200037c565b935050604085015160ff811681146200048857600080fd5b60608601519092506001600160a01b0381168114620004a657600080fd5b939692955090935050565b600181811c90821680620004c657607f821691505b602082108103620004e757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200053b57600081815260208120601f850160051c81016020861015620005165750805b601f850160051c820191505b81811015620005375782815560010162000522565b5050505b505050565b81516001600160401b038111156200055c576200055c62000340565b62000574816200056d8454620004b1565b84620004ed565b602080601f831160018114620005ac5760008415620005935750858301515b600019600386901b1c1916600185901b17855562000537565b600085815260208120601f198616915b82811015620005dd57888601518255948401946001909101908401620005bc565b5085821015620005fc5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620006635781600019048211156200064757620006476200060c565b808516156200065557918102915b93841c939080029062000627565b509250929050565b6000826200067c57506001620002a5565b816200068b57506000620002a5565b8160018114620006a45760028114620006af57620006cf565b6001915050620002a5565b60ff841115620006c357620006c36200060c565b50506001821b620002a5565b5060208310610133831016604e8410600b8410161715620006f4575081810a620002a5565b62000700838362000622565b80600019048211156200071757620007176200060c565b029392505050565b60006200072d83836200066b565b9392505050565b8082028115828204841417620002a557620002a56200060c565b6000600182016200076357620007636200060c565b5060010190565b60208152600082518060208401526200078b81604085016020870162000356565b601f01601f19169190910160400192915050565b80516020808301519190811015620004e75760001960209190910360031b1b16919050565b60805160a05160c05160e051610100516101205161014051612bfc6200081f6000396000611371015260006113440152600061112c015260006111040152600061105f01526000611089015260006110b30152612bfc6000f3fe608060405234801561001057600080fd5b50600436106102115760003560e01c80637ecebe0011610125578063a5a2708b116100ad578063cb6935851161007c578063cb693585146104a0578063d505accf146104c0578063dd62ed3e146104d3578063f1127ed81461050c578063f2fde38b1461054b57600080fd5b8063a5a2708b1461045e578063a9059cbb14610471578063c3cda52014610484578063c7863bca1461049757600080fd5b80638ea98117116100f45780638ea981171461040757806391ddadf41461041a57806395d89b411461043057806399d9e910146104385780639ab24eb01461044b57600080fd5b80637ecebe00146103b557806384b0196e146103c85780638da5cb5b146103e35780638e539e8c146103f457600080fd5b80633644e515116101a8578063587cde1e11610177578063587cde1e146103365780635c19a95c146103495780636fcfff451461035c57806370a0823114610384578063715018a6146103ad57600080fd5b80633644e515146102de5780633a46b1a8146102e657806340c10f19146102f95780634bf5d7e91461030c57600080fd5b806318160ddd116101e457806318160ddd146102955780631d333496146102a757806323b872dd146102bc578063313ce567146102cf57600080fd5b806306fdde0314610216578063095ea7b3146102345780630a009097146102575780630fee1a2014610282575b600080fd5b61021e61055e565b60405161022b9190612638565b60405180910390f35b610247610242366004612667565b6105f0565b604051901515815260200161022b565b60105461026a906001600160a01b031681565b6040516001600160a01b03909116815260200161022b565b600f5461026a906001600160a01b031681565b6005545b60405190815260200161022b565b6102ba6102b5366004612691565b61060a565b005b6102476102ca3660046126ac565b610684565b6040516012815260200161022b565b6102996106a8565b6102996102f4366004612667565b6106b7565b6102ba610307366004612667565b61072e565b60408051808201909152600e81526d06d6f64653d74696d657374616d760941b602082015261021e565b61026a610344366004612691565b6107c7565b6102ba610357366004612691565b6107e5565b61036f61036a366004612691565b610849565b60405163ffffffff909116815260200161022b565b610299610392366004612691565b6001600160a01b031660009081526003602052604090205490565b6102ba610854565b6102996103c3366004612691565b610868565b6103d0610873565b60405161022b97969594939291906126e8565b600e546001600160a01b031661026a565b61029961040236600461277e565b6108b9565b6102ba610415366004612691565b610919565b60405165ffffffffffff4216815260200161022b565b61021e6109cc565b61029961044636600461277e565b6109db565b610299610459366004612691565b6109fc565b6102ba61046c366004612691565b610a2c565b61024761047f366004612667565b610a9d565b6102ba6104923660046127a8565b610aab565b61029960005481565b6104b36104ae366004612816565b610b02565b60405161022b91906128da565b6102ba6104ce36600461291b565b610d87565b6102996104e1366004612985565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b61051f61051a3660046129b8565b610ec1565b60408051825165ffffffffffff1681526020928301516001600160d01b0316928101929092520161022b565b6102ba610559366004612691565b610ee6565b60606006805461056d906129f8565b80601f0160208091040260200160405190810160405280929190818152602001828054610599906129f8565b80156105e65780601f106105bb576101008083540402835291602001916105e6565b820191906000526020600020905b8154815290600101906020018083116105c957829003601f168201915b5050505050905090565b6000336105fe818585610f21565b60019150505b92915050565b610612610f33565b6001600160a01b0381166106415760405162461bcd60e51b815260040161063890612a32565b60405180910390fd5b61064c601182610f60565b506040516001600160a01b038216907f502d69f00ebb30d641b63e8e3bd7370ef4e730a9cce3679ba77153920ca6c97190600090a250565b600033610692858285610f75565b61069d858585610ff3565b506001949350505050565b60006106b2611052565b905090565b60004265ffffffffffff811683106106f357604051637669fc0f60e11b81526004810184905265ffffffffffff82166024820152604401610638565b61071d6106ff8461117d565b6001600160a01b0386166000908152600c60205260409020906111b4565b6001600160d01b0316949350505050565b6010546001600160a01b03163314806107515750600f546001600160a01b031633145b6107b95760405162461bcd60e51b815260206004820152603360248201527f4f6e6c792074686520636f6f7264696e61746f72206f72206d6967726174696f6044820152721b8818dbdb9d1c9858dd0818d85b881b5a5b9d606a1b6064820152608401610638565b6107c3828261126a565b5050565b6001600160a01b039081166000908152600b60205260409020541690565b6001600160a01b038116331461083d5760405162461bcd60e51b815260206004820152601d60248201527f43616e206f6e6c792064656c656761746520746f20796f757273656c660000006044820152606401610638565b610846816112a0565b50565b6000610604826112ab565b61085c610f33565b61086660006112cd565b565b60006106048261131f565b60006060806000806000606061088761133d565b61088f61136a565b60408051600080825260208201909252600f60f81b9b939a50919850469750309650945092509050565b60004265ffffffffffff811683106108f557604051637669fc0f60e11b81526004810184905265ffffffffffff82166024820152604401610638565b6109096109018461117d565b600d906111b4565b6001600160d01b03169392505050565b610921610f33565b6001600160a01b0381166109825760405162461bcd60e51b815260206004820152602260248201527f436f6f7264696e61746f7220616464726573732063616e6e6f74206265207a65604482015261726f60f01b6064820152608401610638565b601080546001600160a01b0319166001600160a01b0383169081179091556040517fd1a6a14209a385a964d036e404cb5cfb71f4000cdb03c9366292430787261be690600090a250565b60606007805461056d906129f8565b600181815481106109eb57600080fd5b600091825260209091200154905081565b6001600160a01b0381166000908152600c60205260408120610a1d90611397565b6001600160d01b031692915050565b610a34610f33565b6001600160a01b038116610a5a5760405162461bcd60e51b815260040161063890612a32565b610a656011826113d0565b506040516001600160a01b038216907f46131c06a94c84abeacf0054f9f46bd36339dffee863db6858fba499850cafb190600090a250565b6000336105fe818585610ff3565b60405162461bcd60e51b815260206004820152602660248201527f5369676e61747572652d62617365642064656c65676174696f6e2069732064696044820152651cd8589b195960d21b6064820152608401610638565b606060028351610b129190612a91565b15610b6b5760405162461bcd60e51b8152602060048201526024808201527f496e707574206c656e677468206d7573742062652061206d756c7469706c652060448201526337b3101960e11b6064820152608401610638565b600060028451610b7b9190612abb565b905060008167ffffffffffffffff811115610b9857610b98612800565b604051908082528060200260200182016040528015610bc1578160200160208202803683370190505b50905060008060005467ffffffffffffffff811115610be257610be2612800565b604051908082528060200260200182016040528015610c0b578160200160208202803683370190505b50905060005b6000548160ff161015610cb9576000610c4c60028360ff1681548110610c3957610c39612acf565b90600052602060002090600202016113e5565b60018360ff1681548110610c6257610c62612acf565b9060005260206000200154610c779190612ae5565b9050610c838185612afc565b935083838360ff1681518110610c9b57610c9b612acf565b60209081029190910101525080610cb181612b0f565b915050610c11565b5081600003610cce5782945050505050610604565b60005b84811015610d7b576000610d3b89610cea846002612ae5565b81518110610cfa57610cfa612acf565b60200260200101518a846002610d109190612ae5565b610d1b906001612afc565b81518110610d2b57610d2b612acf565b602002602001015186868c6113ef565b905080858381518110610d5057610d50612acf565b6001600160a01b03909216602092830291909101909101525080610d7381612b2e565b915050610cd1565b50919695505050505050565b83421115610dab5760405163313c898160e11b815260048101859052602401610638565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610df88c6001600160a01b03166000908152600a6020526040902080546001810190915590565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090506000610e538261152c565b90506000610e6382878787611559565b9050896001600160a01b0316816001600160a01b031614610eaa576040516325c0072360e11b81526001600160a01b0380831660048301528b166024820152604401610638565b610eb58a8a8a610f21565b50505050505050505050565b6040805180820190915260008082526020820152610edf8383611587565b9392505050565b610eee610f33565b6001600160a01b038116610f1857604051631e4fbdf760e01b815260006004820152602401610638565b610846816112cd565b610f2e83838360016115bd565b505050565b600e546001600160a01b031633146108665760405163118cdaa760e01b8152336004820152602401610638565b6000610edf836001600160a01b038416611692565b6001600160a01b038381166000908152600460209081526040808320938616835292905220546000198114610fed5781811015610fde57604051637dc7a0d960e11b81526001600160a01b03841660048201526024810182905260448101839052606401610638565b610fed848484840360006115bd565b50505050565b6001600160a01b03831661101d57604051634b637e8f60e11b815260006004820152602401610638565b6001600160a01b0382166110475760405163ec442f0560e01b815260006004820152602401610638565b610f2e8383836116e1565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480156110ab57507f000000000000000000000000000000000000000000000000000000000000000046145b156110d557507f000000000000000000000000000000000000000000000000000000000000000090565b6106b2604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b600065ffffffffffff8211156111b0576040516306dfcc6560e41b81526030600482015260248101839052604401610638565b5090565b8154600090818160058111156112135760006111cf8461183c565b6111d99085612b47565b60008881526020902090915081015465ffffffffffff908116908716101561120357809150611211565b61120e816001612afc565b92505b505b600061122187878585611995565b9050801561125c5761124687611238600184612b47565b600091825260209091200190565b54600160301b90046001600160d01b031661125f565b60005b979650505050505050565b6001600160a01b0382166112945760405163ec442f0560e01b815260006004820152602401610638565b6107c3600083836116e1565b336107c381836119f7565b6001600160a01b0381166000908152600c602052604081205461060490611a72565b600e80546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0381166000908152600a6020526040812054610604565b60606106b27f00000000000000000000000000000000000000000000000000000000000000006008611aa3565b60606106b27f00000000000000000000000000000000000000000000000000000000000000006009611aa3565b805460009080156113c7576113b183611238600184612b47565b54600160301b90046001600160d01b0316610edf565b60009392505050565b6000610edf836001600160a01b038416611b4e565b6000610604825490565b6000806113fc8588612a91565b90506000805b6000548160ff16101561144d57858160ff168151811061142457611424612acf565b602002602001015183101561143b5780915061144d565b8061144581612b0f565b915050611402565b50600060028260ff168154811061146657611466612acf565b906000526020600020906002020190506000611481826113e5565b9050600061148f828b612a91565b905061149b8382611c48565b955060005b6114ae878660ff168a611c54565b61151c5760038160ff16106114cc5760009650505050505050611523565b60408051602081018d90520160408051601f1981840301815291905280516020909101209a506114fc838c612a91565b91506115088483611c48565b96508061151481612b0f565b9150506114a0565b5050505050505b95945050505050565b6000610604611539611052565b8360405161190160f01b8152600281019290925260228201526042902090565b60008060008061156b88888888611c88565b92509250925061157b8282611d57565b50909695505050505050565b60408051808201909152600080825260208201526001600160a01b0383166000908152600c60205260409020610edf9083611e10565b6001600160a01b0384166115e75760405163e602df0560e01b815260006004820152602401610638565b6001600160a01b03831661161157604051634a1406b160e11b815260006004820152602401610638565b6001600160a01b0380851660009081526004602090815260408083209387168352929052208290558015610fed57826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161168491815260200190565b60405180910390a350505050565b60008181526001830160205260408120546116d957508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610604565b506000610604565b6116ec838383611e80565b6001600160a01b03831615611720576001600160a01b03831660009081526003602052604090205461171e8482611ee7565b505b6001600160a01b03821615611754576001600160a01b0382166000908152600360205260409020546117528382611ee7565b505b6001600160a01b0382161580159061177d57506000611772836107c7565b6001600160a01b0316145b1561178c5761178c82836119f7565b600061179860116113e5565b905060005b81811015611835576117b0601182611c48565b6040516311c07af760e01b81526001600160a01b03878116600483015286811660248301526044820186905230606483015291909116906311c07af790608401600060405180830381600087803b15801561180a57600080fd5b505af115801561181e573d6000803e3d6000fd5b50505050808061182d90612b2e565b91505061179d565b5050505050565b60006001821161184a575090565b816001600160801b82106118635760809190911c9060401b5b68010000000000000000821061187e5760409190911c9060201b5b64010000000082106118955760209190911c9060101b5b6201000082106118aa5760109190911c9060081b5b61010082106118be5760089190911c9060041b5b601082106118d15760049190911c9060021b5b600482106118dd5760011b5b600302600190811c908185816118f5576118f5612a7b565b048201901c9050600181858161190d5761190d612a7b565b048201901c9050600181858161192557611925612a7b565b048201901c9050600181858161193d5761193d612a7b565b048201901c9050600181858161195557611955612a7b565b048201901c9050600181858161196d5761196d612a7b565b048201901c905061198c81858161198657611986612a7b565b04821190565b90039392505050565b60005b818310156119ef5760006119ac8484612036565b60008781526020902090915065ffffffffffff86169082015465ffffffffffff1611156119db578092506119e9565b6119e6816001612afc565b93505b50611998565b509392505050565b6000611a02836107c7565b6001600160a01b038481166000818152600b602052604080822080546001600160a01b031916888616908117909155905194955093928516927f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a4610f2e8183611a6d86612051565b61206f565b600063ffffffff8211156111b0576040516306dfcc6560e41b81526020600482015260248101839052604401610638565b606060ff8314611abd57611ab6836121db565b9050610604565b818054611ac9906129f8565b80601f0160208091040260200160405190810160405280929190818152602001828054611af5906129f8565b8015611b425780601f10611b1757610100808354040283529160200191611b42565b820191906000526020600020905b815481529060010190602001808311611b2557829003601f168201915b50505050509050610604565b60008181526001830160205260408120548015611c37576000611b72600183612b47565b8554909150600090611b8690600190612b47565b9050808214611beb576000866000018281548110611ba657611ba6612acf565b9060005260206000200154905080876000018481548110611bc957611bc9612acf565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080611bfc57611bfc612b5a565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610604565b6000915050610604565b5092915050565b6000610edf838361221a565b600060018381548110611c6957611c69612acf565b9060005260206000200154611c7e85846106b7565b1015949350505050565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841115611cc35750600091506003905082611d4d565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa158015611d17573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116611d4357506000925060019150829050611d4d565b9250600091508190505b9450945094915050565b6000826003811115611d6b57611d6b612b70565b03611d74575050565b6001826003811115611d8857611d88612b70565b03611da65760405163f645eedf60e01b815260040160405180910390fd5b6002826003811115611dba57611dba612b70565b03611ddb5760405163fce698f760e01b815260048101829052602401610638565b6003826003811115611def57611def612b70565b036107c3576040516335e2f38360e21b815260048101829052602401610638565b6040805180820190915260008082526020820152826000018263ffffffff1681548110611e3f57611e3f612acf565b60009182526020918290206040805180820190915291015465ffffffffffff81168252600160301b90046001600160d01b0316918101919091529392505050565b611e8b838383612244565b6001600160a01b038316611edc576000611ea460055490565b90506001600160d01b0380821115611ed957604051630e58ae9360e11b81526004810183905260248101829052604401610638565b50505b610f2e83838361236e565b60005b600054811015610f2e5760018181548110611f0757611f07612acf565b90600052602060002001548210158015611f5d57506001600054611f2b9190612b47565b811480611f5d57506001611f3f8282612afc565b81548110611f4f57611f4f612acf565b906000526020600020015482105b15611fd357611f958360028381548110611f7957611f79612acf565b90600052602060002090600202016123cd90919063ffffffff16565b611fce57611fcc8360028381548110611fb057611fb0612acf565b9060005260206000209060020201610f6090919063ffffffff16565b505b612024565b611fea8360028381548110611f7957611f79612acf565b1561202457612022836002838154811061200657612006612acf565b90600052602060002090600202016113d090919063ffffffff16565b505b8061202e81612b2e565b915050611eea565b60006120456002848418612abb565b610edf90848416612afc565b6001600160a01b038116600090815260036020526040812054610604565b816001600160a01b0316836001600160a01b0316141580156120915750600081115b15610f2e576001600160a01b03831615612139576001600160a01b0383166000908152600c6020526040812081906120d4906123ef6120cf866123fb565b61242f565b6001600160d01b031691506001600160d01b03169150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724838360405161212e929190918252602082015260400190565b60405180910390a250505b6001600160a01b03821615610f2e576001600160a01b0382166000908152600c602052604081208190612172906124616120cf866123fb565b6001600160d01b031691506001600160d01b03169150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516121cc929190918252602082015260400190565b60405180910390a25050505050565b606060006121e88361246d565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b600082600001828154811061223157612231612acf565b9060005260206000200154905092915050565b6001600160a01b03831661226f5780600560008282546122649190612afc565b909155506122e19050565b6001600160a01b038316600090815260036020526040902054818110156122c25760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401610638565b6001600160a01b03841660009081526003602052604090209082900390555b6001600160a01b0382166122fd5760058054829003905561231c565b6001600160a01b03821660009081526003602052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161236191815260200190565b60405180910390a3505050565b6001600160a01b0383166123905761238d600d6124616120cf846123fb565b50505b6001600160a01b0382166123b2576123af600d6123ef6120cf846123fb565b50505b610f2e6123be846107c7565b6123c7846107c7565b8361206f565b6001600160a01b03811660009081526001830160205260408120541515610edf565b6000610edf8284612b86565b60006001600160d01b038211156111b0576040516306dfcc6560e41b815260d0600482015260248101839052604401610638565b6000806124544261244c61244288611397565b868863ffffffff16565b879190612495565b915091505b935093915050565b6000610edf8284612ba6565b600060ff8216601f81111561060457604051632cd44ac360e21b815260040160405180910390fd5b6000806124548585858254600090819080156125975760006124bc87611238600185612b47565b805490915065ffffffffffff80821691600160301b90046001600160d01b03169088168211156124ff57604051632520601d60e01b815260040160405180910390fd5b8765ffffffffffff168265ffffffffffff160361253857825465ffffffffffff16600160301b6001600160d01b03891602178355612589565b6040805180820190915265ffffffffffff808a1682526001600160d01b03808a1660208085019182528d54600181018f5560008f81529190912094519151909216600160301b029216919091179101555b945085935061245992505050565b50506040805180820190915265ffffffffffff80851682526001600160d01b0380851660208085019182528854600181018a5560008a815291822095519251909316600160301b029190931617920191909155905081612459565b6000815180845260005b81811015612618576020818501810151868301820152016125fc565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000610edf60208301846125f2565b80356001600160a01b038116811461266257600080fd5b919050565b6000806040838503121561267a57600080fd5b6126838361264b565b946020939093013593505050565b6000602082840312156126a357600080fd5b610edf8261264b565b6000806000606084860312156126c157600080fd5b6126ca8461264b565b92506126d86020850161264b565b9150604084013590509250925092565b60ff60f81b881681526000602060e08184015261270860e084018a6125f2565b838103604085015261271a818a6125f2565b606085018990526001600160a01b038816608086015260a0850187905284810360c0860152855180825283870192509083019060005b8181101561276c57835183529284019291840191600101612750565b50909c9b505050505050505050505050565b60006020828403121561279057600080fd5b5035919050565b803560ff8116811461266257600080fd5b60008060008060008060c087890312156127c157600080fd5b6127ca8761264b565b955060208701359450604087013593506127e660608801612797565b92506080870135915060a087013590509295509295509295565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561282957600080fd5b823567ffffffffffffffff8082111561284157600080fd5b818501915085601f83011261285557600080fd5b813560208282111561286957612869612800565b8160051b604051601f19603f8301168101818110868211171561288e5761288e612800565b6040529283528183019350848101820192898411156128ac57600080fd5b948201945b838610156128ca578535855294820194938201936128b1565b9997909101359750505050505050565b6020808252825182820181905260009190848201906040850190845b8181101561157b5783516001600160a01b0316835292840192918401916001016128f6565b600080600080600080600060e0888a03121561293657600080fd5b61293f8861264b565b965061294d6020890161264b565b9550604088013594506060880135935061296960808901612797565b925060a0880135915060c0880135905092959891949750929550565b6000806040838503121561299857600080fd5b6129a18361264b565b91506129af6020840161264b565b90509250929050565b600080604083850312156129cb57600080fd5b6129d48361264b565b9150602083013563ffffffff811681146129ed57600080fd5b809150509250929050565b600181811c90821680612a0c57607f821691505b602082108103612a2c57634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526029908201527f5472616e73616374696f6e206c6f6767657220616464726573732063616e6e6f60408201526874206265207a65726f60b81b606082015260800190565b634e487b7160e01b600052601260045260246000fd5b600082612aa057612aa0612a7b565b500690565b634e487b7160e01b600052601160045260246000fd5b600082612aca57612aca612a7b565b500490565b634e487b7160e01b600052603260045260246000fd5b808202811582820484141761060457610604612aa5565b8082018082111561060457610604612aa5565b600060ff821660ff8103612b2557612b25612aa5565b60010192915050565b600060018201612b4057612b40612aa5565b5060010190565b8181038181111561060457610604612aa5565b634e487b7160e01b600052603160045260246000fd5b634e487b7160e01b600052602160045260246000fd5b6001600160d01b03828116828216039080821115611c4157611c41612aa5565b6001600160d01b03818116838216019080821115611c4157611c41612aa556fea26469706673582212204d68938ef3e2729bb74c10e2cc2ddbbc2c5f73cb914a27038f31c958696d231b64736f6c63430008140033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000000600000000000000000000000073cfcbc576ed24f4e383a9d83ccf8155ff7f8f71000000000000000000000000000000000000000000000000000000000000000b547269706c65204e696e6500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044e494e3300000000000000000000000000000000000000000000000000000000