608060405260056001556127106002556127106003556000600860146101000a81548160ff0219169083151502179055506001600860156101000a81548160ff0219169083151502179055506005600c556000600d556005600e553480156200006757600080fd5b50620000886200007c6200082b60201b60201c565b6200083360201b60201c565b60006012600a6200009a919062000e3f565b633b9aca00620000ab919062000e90565b9050620000ce620000c16200082b60201b60201c565b82620008f760201b60201c565b620000de6200082b60201b60201c565b601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550737a250d5630b4cf539739df2c5dacb4c659f2488d600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001a830600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168362000a9360201b60201c565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000216573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200023c919062000f45565b73ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002c6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ec919062000f45565b6040518363ffffffff1660e01b81526004016200030b92919062000f88565b6020604051808303816000875af11580156200032b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000351919062000f45565b600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016200043292919062000fc6565b6020604051808303816000875af115801562000452573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000478919062001030565b506001600a60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600a6000620004e762000c6460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b6000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f60006200069a62000c6460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600f6000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60006200077b62000c6460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550506200126d565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000969576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200096090620010c3565b60405180910390fd5b620009858160065462000c8d60201b62000b6e1790919060201c565b600681905550620009e481600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462000c8d60201b62000b6e1790919060201c565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000a879190620010e5565b60405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160362000b05576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000afc9062001178565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000b77576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000b6e9062001210565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405162000c579190620010e5565b60405180910390a3505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000818362000c9d919062001232565b905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000d335780860481111562000d0b5762000d0a62000ca5565b5b600185161562000d1b5780820291505b808102905062000d2b8562000cd4565b945062000ceb565b94509492505050565b60008262000d4e576001905062000e21565b8162000d5e576000905062000e21565b816001811462000d77576002811462000d825762000db8565b600191505062000e21565b60ff84111562000d975762000d9662000ca5565b5b8360020a91508482111562000db15762000db062000ca5565b5b5062000e21565b5060208310610133831016604e8410600b841016171562000df25782820a90508381111562000dec5762000deb62000ca5565b5b62000e21565b62000e01848484600162000ce1565b9250905081840481111562000e1b5762000e1a62000ca5565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b600062000e4c8262000e28565b915062000e598362000e32565b925062000e887fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000d3c565b905092915050565b600062000e9d8262000e28565b915062000eaa8362000e28565b925082820262000eba8162000e28565b9150828204841483151762000ed45762000ed362000ca5565b5b5092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000f0d8262000ee0565b9050919050565b62000f1f8162000f00565b811462000f2b57600080fd5b50565b60008151905062000f3f8162000f14565b92915050565b60006020828403121562000f5e5762000f5d62000edb565b5b600062000f6e8482850162000f2e565b91505092915050565b62000f828162000f00565b82525050565b600060408201905062000f9f600083018562000f77565b62000fae602083018462000f77565b9392505050565b62000fc08162000e28565b82525050565b600060408201905062000fdd600083018562000f77565b62000fec602083018462000fb5565b9392505050565b60008115159050919050565b6200100a8162000ff3565b81146200101657600080fd5b50565b6000815190506200102a8162000fff565b92915050565b60006020828403121562001049576200104862000edb565b5b6000620010598482850162001019565b91505092915050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b6000620010ab601f8362001062565b9150620010b88262001073565b602082019050919050565b60006020820190508181036000830152620010de816200109c565b9050919050565b6000602082019050620010fc600083018462000fb5565b92915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006200116060248362001062565b91506200116d8262001102565b604082019050919050565b60006020820190508181036000830152620011938162001151565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000620011f860228362001062565b915062001205826200119a565b604082019050919050565b600060208201905081810360008301526200122b81620011e9565b9050919050565b60006200123f8262000e28565b91506200124c8362000e28565b925082820190508082111562001267576200126662000ca5565b5b92915050565b612813806200127d6000396000f3fe6080604052600436106101395760003560e01c8063751039fc116100ab578063a457c2d71161006f578063a457c2d71461042e578063a9059cbb1461046b578063cdf4bab9146104a8578063d54f7d5e146104d3578063dd62ed3e146104fe578063f2fde38b1461053b5761016c565b8063751039fc1461036b5780637d1db4a5146103825780638d5f81e2146103ad5780638da5cb5b146103d857806395d89b41146104035761016c565b806339509351116100fd578063395093511461026c57806342966c68146102a9578063499a2818146102d257806351c6590a146102fb57806370a0823114610317578063715018a6146103545761016c565b806306fdde0314610171578063095ea7b31461019c57806318160ddd146101d957806323b872dd14610204578063313ce567146102415761016c565b3661016c577f544c765b33ca411cce832250371569244f765a17fcd217832be093f0fd5fa45b60405160405180910390a1005b600080fd5b34801561017d57600080fd5b50610186610564565b6040516101939190611cca565b60405180910390f35b3480156101a857600080fd5b506101c360048036038101906101be9190611d85565b6105a1565b6040516101d09190611de0565b60405180910390f35b3480156101e557600080fd5b506101ee6105bf565b6040516101fb9190611e0a565b60405180910390f35b34801561021057600080fd5b5061022b60048036038101906102269190611e25565b6105c9565b6040516102389190611de0565b60405180910390f35b34801561024d57600080fd5b506102566106a2565b6040516102639190611e94565b60405180910390f35b34801561027857600080fd5b50610293600480360381019061028e9190611d85565b6106ab565b6040516102a09190611de0565b60405180910390f35b3480156102b557600080fd5b506102d060048036038101906102cb9190611eaf565b61075e565b005b3480156102de57600080fd5b506102f960048036038101906102f49190611eaf565b610772565b005b61031560048036038101906103109190611eaf565b6107a0565b005b34801561032357600080fd5b5061033e60048036038101906103399190611edc565b6107fd565b60405161034b9190611e0a565b60405180910390f35b34801561036057600080fd5b50610369610846565b005b34801561037757600080fd5b5061038061085a565b005b34801561038e57600080fd5b50610397610876565b6040516103a49190611e0a565b60405180910390f35b3480156103b957600080fd5b506103c26108a8565b6040516103cf9190611f18565b60405180910390f35b3480156103e457600080fd5b506103ed6108d2565b6040516103fa9190611f18565b60405180910390f35b34801561040f57600080fd5b506104186108fb565b6040516104259190611cca565b60405180910390f35b34801561043a57600080fd5b5061045560048036038101906104509190611d85565b610938565b6040516104629190611de0565b60405180910390f35b34801561047757600080fd5b50610492600480360381019061048d9190611d85565b610a05565b60405161049f9190611de0565b60405180910390f35b3480156104b457600080fd5b506104bd610a23565b6040516104ca9190611de0565b60405180910390f35b3480156104df57600080fd5b506104e8610a3a565b6040516104f59190611f18565b60405180910390f35b34801561050a57600080fd5b5061052560048036038101906105209190611f33565b610a64565b6040516105329190611e0a565b60405180910390f35b34801561054757600080fd5b50610562600480360381019061055d9190611edc565b610aeb565b005b60606040518060400160405280600a81526020017f446f676520526f636b2000000000000000000000000000000000000000000000815250905090565b60006105b56105ae610b84565b8484610b8c565b6001905092915050565b6000600654905090565b60006105d6848484610d55565b610697846105e2610b84565b6106928560405180606001604052806028815260200161279160289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610648610b84565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116b39092919063ffffffff16565b610b8c565b600190509392505050565b60006012905090565b60006107546106b8610b84565b8461074f85600560006106c9610b84565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b6e90919063ffffffff16565b610b8c565b6001905092915050565b61076f610769610b84565b82611708565b50565b601054331461078057600080fd5b604051338152600460208201526040812082815560648002600c55505050565b6107a86118ab565b6001600860146101000a81548160ff0219169083151502179055506107d56107ce6108d2565b3083610d55565b6107df8134611929565b6000600860146101000a81548160ff02191690831515021790555050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61084e6118ab565b6108586000611a0e565b565b6108626118ab565b612710600381905550612710600281905550565b60006108a3612710610895600354600654611ad290919063ffffffff16565b611ae890919063ffffffff16565b905090565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600581526020017f444f474552000000000000000000000000000000000000000000000000000000815250905090565b60006109fb610945610b84565b846109f6856040518060600160405280602581526020016127b9602591396005600061096f610b84565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116b39092919063ffffffff16565b610b8c565b6001905092915050565b6000610a19610a12610b84565b8484610d55565b6001905092915050565b6000600860149054906101000a900460ff16905090565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610af36118ab565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610b62576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5990611fe5565b60405180910390fd5b610b6b81611a0e565b50565b60008183610b7c9190612034565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610bfb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf2906120da565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c619061216c565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610d489190611e0a565b60405180910390a3505050565b610d60838383611afe565b600080610d6b6108d2565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610dd95750610da96108d2565b73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561134e57600f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015610e825750600f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561134d57600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16148015610f325750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b8015610f885750600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015610fde5750600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156110d85761100e612710611000600354600654611ad290919063ffffffff16565b611ae890919063ffffffff16565b831115611050576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611047906121fe565b60405180910390fd5b61107b61271061106d600254600654611ad290919063ffffffff16565b611ae890919063ffffffff16565b61109684611088876107fd565b610b6e90919063ffffffff16565b11156110d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ce90612290565b60405180910390fd5b5b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614801561116157503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b156112015761118f612710611181600d5486611ad290919063ffffffff16565b611ae890919063ffffffff16565b91506111ba6127106111ac600c5486611ad290919063ffffffff16565b611ae890919063ffffffff16565b905043600960003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161480156112ac5750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561134c576112da6127106112cc600d5486611ad290919063ffffffff16565b611ae890919063ffffffff16565b91506113056127106112f7600e5486611ad290919063ffffffff16565b611ae890919063ffffffff16565b905043600960003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b5b60006113638284610b6e90919063ffffffff16565b90506000811115611502576000831115611382576113818684611708565b5b60008211156114ec576113ff8260046000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b6e90919063ffffffff16565b60046000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114e39190611e0a565b60405180910390a35b6114ff8185611c2490919063ffffffff16565b93505b61156e8460405180606001604052806026815260200161276b60269139600460008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116b39092919063ffffffff16565b600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061160384600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b6e90919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040516116a39190611e0a565b60405180910390a3505050505050565b60008383111582906116fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f29190611cca565b60405180910390fd5b5082840390509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611777576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176e90612322565b60405180910390fd5b6117e38160405180606001604052806022815260200161274960229139600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546116b39092919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061183b81600654611c2490919063ffffffff16565b600681905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161189f9190611e0a565b60405180910390a35050565b6118b3610b84565b73ffffffffffffffffffffffffffffffffffffffff166118d16108d2565b73ffffffffffffffffffffffffffffffffffffffff1614611927576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191e9061238e565b60405180910390fd5b565b61195630600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610b8c565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d7198230856000806119a26108d2565b426040518863ffffffff1660e01b81526004016119c4969594939291906123f3565b60606040518083038185885af11580156119e2573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611a079190612469565b5050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008183611ae091906124bc565b905092915050565b60008183611af6919061252d565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611b6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b64906125d0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611bdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bd390612662565b60405180910390fd5b60008111611c1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c16906126f4565b60405180910390fd5b505050565b60008183611c329190612714565b905092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611c74578082015181840152602081019050611c59565b60008484015250505050565b6000601f19601f8301169050919050565b6000611c9c82611c3a565b611ca68185611c45565b9350611cb6818560208601611c56565b611cbf81611c80565b840191505092915050565b60006020820190508181036000830152611ce48184611c91565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611d1c82611cf1565b9050919050565b611d2c81611d11565b8114611d3757600080fd5b50565b600081359050611d4981611d23565b92915050565b6000819050919050565b611d6281611d4f565b8114611d6d57600080fd5b50565b600081359050611d7f81611d59565b92915050565b60008060408385031215611d9c57611d9b611cec565b5b6000611daa85828601611d3a565b9250506020611dbb85828601611d70565b9150509250929050565b60008115159050919050565b611dda81611dc5565b82525050565b6000602082019050611df56000830184611dd1565b92915050565b611e0481611d4f565b82525050565b6000602082019050611e1f6000830184611dfb565b92915050565b600080600060608486031215611e3e57611e3d611cec565b5b6000611e4c86828701611d3a565b9350506020611e5d86828701611d3a565b9250506040611e6e86828701611d70565b9150509250925092565b600060ff82169050919050565b611e8e81611e78565b82525050565b6000602082019050611ea96000830184611e85565b92915050565b600060208284031215611ec557611ec4611cec565b5b6000611ed384828501611d70565b91505092915050565b600060208284031215611ef257611ef1611cec565b5b6000611f0084828501611d3a565b91505092915050565b611f1281611d11565b82525050565b6000602082019050611f2d6000830184611f09565b92915050565b60008060408385031215611f4a57611f49611cec565b5b6000611f5885828601611d3a565b9250506020611f6985828601611d3a565b9150509250929050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000611fcf602683611c45565b9150611fda82611f73565b604082019050919050565b60006020820190508181036000830152611ffe81611fc2565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061203f82611d4f565b915061204a83611d4f565b925082820190508082111561206257612061612005565b5b92915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006120c4602483611c45565b91506120cf82612068565b604082019050919050565b600060208201905081810360008301526120f3816120b7565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612156602283611c45565b9150612161826120fa565b604082019050919050565b6000602082019050818103600083015261218581612149565b9050919050565b7f5472616e7366657220616d6f756e74206578636565647320746865206d61785460008201527f78416d6f756e742e000000000000000000000000000000000000000000000000602082015250565b60006121e8602883611c45565b91506121f38261218c565b604082019050919050565b60006020820190508181036000830152612217816121db565b9050919050565b7f45786365656473206d6178696d756d2077616c6c657420746f6b656e20616d6f60008201527f756e740000000000000000000000000000000000000000000000000000000000602082015250565b600061227a602383611c45565b91506122858261221e565b604082019050919050565b600060208201905081810360008301526122a98161226d565b9050919050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600061230c602183611c45565b9150612317826122b0565b604082019050919050565b6000602082019050818103600083015261233b816122ff565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612378602083611c45565b915061238382612342565b602082019050919050565b600060208201905081810360008301526123a78161236b565b9050919050565b6000819050919050565b6000819050919050565b60006123dd6123d86123d3846123ae565b6123b8565b611d4f565b9050919050565b6123ed816123c2565b82525050565b600060c0820190506124086000830189611f09565b6124156020830188611dfb565b61242260408301876123e4565b61242f60608301866123e4565b61243c6080830185611f09565b61244960a0830184611dfb565b979650505050505050565b60008151905061246381611d59565b92915050565b60008060006060848603121561248257612481611cec565b5b600061249086828701612454565b93505060206124a186828701612454565b92505060406124b286828701612454565b9150509250925092565b60006124c782611d4f565b91506124d283611d4f565b92508282026124e081611d4f565b915082820484148315176124f7576124f6612005565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061253882611d4f565b915061254383611d4f565b925082612553576125526124fe565b5b828204905092915050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006125ba602583611c45565b91506125c58261255e565b604082019050919050565b600060208201905081810360008301526125e9816125ad565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061264c602383611c45565b9150612657826125f0565b604082019050919050565b6000602082019050818103600083015261267b8161263f565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006126de602983611c45565b91506126e982612682565b604082019050919050565b6000602082019050818103600083015261270d816126d1565b9050919050565b600061271f82611d4f565b915061272a83611d4f565b925082820390508181111561274257612741612005565b5b9291505056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220ae20e808f8b490c7a7ee349c0623735d1614a36111a8936f44aa4dea65a3e33364736f6c63430008120033