6080604052604051806080016040528060405180610100016040528060c8815260200162005db560c89139815260200160405180610100016040528060c9815260200162005cec60c99139815260200160405180610100016040528060c9815260200162005c2360c99139815260200160405180610100016040528060c8815260200162005e7d60c89139815250600e6000820151816000019081620000a6919062000573565b506020820151816001019081620000be919062000573565b506040820151816002019081620000d6919062000573565b506060820151816003019081620000ee919062000573565b5050506000601260006101000a81548160ff0219169083151502179055503480156200011957600080fd5b506040518060400160405280600981526020017f4261736558204e465400000000000000000000000000000000000000000000008152506040518060400160405280600281526020017f4258000000000000000000000000000000000000000000000000000000000000815250816000908162000197919062000573565b508060019081620001a9919062000573565b505050620001cc620001c06200022b60201b60201c565b6200023360201b60201c565b6064600a8190555033600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600d819055506000600b819055506200065a565b600033905090565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200037b57607f821691505b60208210810362000391576200039062000333565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620003fb7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620003bc565b620004078683620003bc565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620004546200044e62000448846200041f565b62000429565b6200041f565b9050919050565b6000819050919050565b620004708362000433565b620004886200047f826200045b565b848454620003c9565b825550505050565b600090565b6200049f62000490565b620004ac81848462000465565b505050565b5b81811015620004d457620004c860008262000495565b600181019050620004b2565b5050565b601f8211156200052357620004ed8162000397565b620004f884620003ac565b8101602085101562000508578190505b620005206200051785620003ac565b830182620004b1565b50505b505050565b600082821c905092915050565b6000620005486000198460080262000528565b1980831691505092915050565b600062000563838362000535565b9150826002028217905092915050565b6200057e82620002f9565b67ffffffffffffffff8111156200059a576200059962000304565b5b620005a6825462000362565b620005b3828285620004d8565b600060209050601f831160018114620005eb5760008415620005d6578287015190505b620005e2858262000555565b86555062000652565b601f198416620005fb8662000397565b60005b828110156200062557848901518255600182019150602085019450602081019050620005fe565b8683101562000645578489015162000641601f89168262000535565b8355505b6001600288020188555050505b505050505050565b6155b9806200066a6000396000f3fe6080604052600436106102455760003560e01c80638402869711610139578063ac399914116100b6578063be13197b1161007a578063be13197b1461087f578063c87b56dd146108bc578063e985e9c5146108f9578063ebb24c3214610936578063f2fde38b1461095f578063f4f3b0591461098857610245565b8063ac399914146107c2578063b63b3d57146107eb578063b69cbd5014610816578063b784902e1461082d578063b88d4fde1461085657610245565b80639b525924116100fd5780639b525924146106c8578063a035b1fe146106f3578063a22cb4651461071e578063a23af5cb14610747578063a3c0b95b1461078457610245565b806384028697146105f55780638da5cb5b1461061e57806394ab67fe1461064957806395d89b411461067257806398d5fdca1461069d57610245565b806323b872dd116101c757806362766dec1161018b57806362766dec146104ea5780636352211e146105275780636c5bf32e1461056457806370a08231146105a1578063715018a6146105de57610245565b806323b872dd1461041b5780633ccfd60b1461044457806342842e0e1461045b5780634ff531b61461048457806352cb5133146104c157610245565b8063095ea7b31161020e578063095ea7b31461035557806314f710fe1461037e57806318148f1b1461038857806318160ddd146103c55780631b163a9d146103f057610245565b8062621fda1461024a57806301ffc9a71461028757806304890b24146102c457806306fdde03146102ed578063081812fc14610318575b600080fd5b34801561025657600080fd5b50610271600480360381019061026c919061393f565b6109b1565b60405161027e91906139fc565b60405180910390f35b34801561029357600080fd5b506102ae60048036038101906102a99190613a76565b6109c3565b6040516102bb9190613abe565b60405180910390f35b3480156102d057600080fd5b506102eb60048036038101906102e69190613b37565b6109d5565b005b3480156102f957600080fd5b50610302610a38565b60405161030f91906139fc565b60405180910390f35b34801561032457600080fd5b5061033f600480360381019061033a919061393f565b610aca565b60405161034c9190613b73565b60405180910390f35b34801561036157600080fd5b5061037c60048036038101906103779190613b8e565b610b10565b005b610386610c27565b005b34801561039457600080fd5b506103af60048036038101906103aa9190613b37565b61149c565b6040516103bc9190613c8c565b60405180910390f35b3480156103d157600080fd5b506103da6115ab565b6040516103e79190613cbd565b60405180910390f35b3480156103fc57600080fd5b506104056115b1565b6040516104129190613b73565b60405180910390f35b34801561042757600080fd5b50610442600480360381019061043d9190613cd8565b6115e3565b005b34801561045057600080fd5b50610459611643565b005b34801561046757600080fd5b50610482600480360381019061047d9190613cd8565b61169a565b005b34801561049057600080fd5b506104ab60048036038101906104a69190613b37565b6116ba565b6040516104b89190613cbd565b60405180910390f35b3480156104cd57600080fd5b506104e860048036038101906104e39190613d2b565b6118e5565b005b3480156104f657600080fd5b50610511600480360381019061050c9190613b37565b611a8a565b60405161051e9190613c8c565b60405180910390f35b34801561053357600080fd5b5061054e6004803603810190610549919061393f565b611a9c565b60405161055b9190613b73565b60405180910390f35b34801561057057600080fd5b5061058b6004803603810190610586919061393f565b611b22565b6040516105989190613de2565b60405180910390f35b3480156105ad57600080fd5b506105c860048036038101906105c39190613b37565b611b97565b6040516105d59190613cbd565b60405180910390f35b3480156105ea57600080fd5b506105f3611c4e565b005b34801561060157600080fd5b5061061c60048036038101906106179190613b37565b611c62565b005b34801561062a57600080fd5b50610633611cc5565b6040516106409190613b73565b60405180910390f35b34801561065557600080fd5b50610670600480360381019061066b9190613b8e565b611cef565b005b34801561067e57600080fd5b50610687611d74565b60405161069491906139fc565b60405180910390f35b3480156106a957600080fd5b506106b2611e06565b6040516106bf9190613cbd565b60405180910390f35b3480156106d457600080fd5b506106dd611e6c565b6040516106ea9190613cbd565b60405180910390f35b3480156106ff57600080fd5b50610708611e72565b6040516107159190613cbd565b60405180910390f35b34801561072a57600080fd5b5061074560048036038101906107409190613e29565b611e78565b005b34801561075357600080fd5b5061076e6004803603810190610769919061393f565b611e8e565b60405161077b9190613f27565b60405180910390f35b34801561079057600080fd5b506107ab60048036038101906107a6919061393f565b612005565b6040516107b9929190613f49565b60405180910390f35b3480156107ce57600080fd5b506107e960048036038101906107e491906140a7565b612036565b005b3480156107f757600080fd5b506108006120c1565b60405161080d91906139fc565b60405180910390f35b34801561082257600080fd5b5061082b61214f565b005b34801561083957600080fd5b50610854600480360381019061084f9190614103565b612174565b005b34801561086257600080fd5b5061087d600480360381019061087891906141d1565b612199565b005b34801561088b57600080fd5b506108a660048036038101906108a19190613b37565b6121fb565b6040516108b39190613cbd565b60405180910390f35b3480156108c857600080fd5b506108e360048036038101906108de919061393f565b612213565b6040516108f091906139fc565b60405180910390f35b34801561090557600080fd5b50610920600480360381019061091b9190614254565b612225565b60405161092d9190613abe565b60405180910390f35b34801561094257600080fd5b5061095d6004803603810190610958919061393f565b6122b9565b005b34801561096b57600080fd5b5061098660048036038101906109819190613b37565b6122e6565b005b34801561099457600080fd5b506109af60048036038101906109aa919061393f565b612369565b005b60606109bc82612213565b9050919050565b60006109ce8261237b565b9050919050565b6109dd6123dc565b6000601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b606060008054610a47906142c3565b80601f0160208091040260200160405190810160405280929190818152602001828054610a73906142c3565b8015610ac05780601f10610a9557610100808354040283529160200191610ac0565b820191906000526020600020905b815481529060010190602001808311610aa357829003601f168201915b5050505050905090565b6000610ad58261245a565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610b1b82611a9c565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8290614366565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610baa6124a5565b73ffffffffffffffffffffffffffffffffffffffff161480610bd95750610bd881610bd36124a5565b612225565b5b610c18576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0f906143f8565b60405180910390fd5b610c2283836124ad565b505050565b600a54610c3333611b97565b10610c73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6a9061448a565b60405180910390fd5b601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610d0a57600b54341015610d09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d00906144f6565b60405180910390fd5b5b600043424433600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051602001610d4795949392919061457f565b6040516020818303038152906040528051906020012060001c90506000606482610d71919061460d565b90506000603c821015610d875760009050610db2565b6055821015610d995760019050610db1565b605f821015610dab5760029050610db0565b600390505b5b5b6001600d6000828254610dc5919061466d565b9250508190555060001515601260009054906101000a900460ff16151503610e4a57613a98600d5410610e0457655af3107a4000600b81905550610e49565b612710600d5410610e2157652d79883d2000600b81905550610e48565b611388600d5410610e3e576512309ce54000600b81905550610e47565b6000600b819055505b5b5b5b33600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610e956008612566565b6000610ea1600861257c565b9050610ead338261258a565b600060405180602001604052806000815250905060006003811115610ed557610ed4613d6b565b5b836003811115610ee857610ee7613d6b565b5b03610f8257600e6000018054610efd906142c3565b80601f0160208091040260200160405190810160405280929190818152602001828054610f29906142c3565b8015610f765780601f10610f4b57610100808354040283529160200191610f76565b820191906000526020600020905b815481529060010190602001808311610f5957829003601f168201915b50505050509050611197565b60016003811115610f9657610f95613d6b565b5b836003811115610fa957610fa8613d6b565b5b0361104357600e6001018054610fbe906142c3565b80601f0160208091040260200160405190810160405280929190818152602001828054610fea906142c3565b80156110375780601f1061100c57610100808354040283529160200191611037565b820191906000526020600020905b81548152906001019060200180831161101a57829003601f168201915b50505050509050611196565b6002600381111561105757611056613d6b565b5b83600381111561106a57611069613d6b565b5b0361110457600e600201805461107f906142c3565b80601f01602080910402602001604051908101604052809291908181526020018280546110ab906142c3565b80156110f85780601f106110cd576101008083540402835291602001916110f8565b820191906000526020600020905b8154815290600101906020018083116110db57829003601f168201915b50505050509050611195565b600e6003018054611114906142c3565b80601f0160208091040260200160405190810160405280929190818152602001828054611140906142c3565b801561118d5780601f106111625761010080835404028352916020019161118d565b820191906000526020600020905b81548152906001019060200180831161117057829003601f168201915b505050505090505b5b5b6111a182826127a7565b600060405180604001604052808481526020018560038111156111c7576111c6613d6b565b5b8152509050601360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002083908060018154018082558091505060019003906000526020600020016000909190919091505580601760008581526020019081526020016000206000820151816000015560208201518160010160006101000a81548160ff0219169083600381111561127b5761127a613d6b565b5b021790555090505042601660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555060006014805490500361133c576014339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611446565b6000805b6014805490508110156113da573373ffffffffffffffffffffffffffffffffffffffff1660148281548110611378576113776146a1565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036113c757600191506113da565b80806113d2906146d0565b915050611340565b5080611444576014339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b505b827f1f8e224df372b1305000c3f246efd7adce7c93d99ef7f8369a6f61a441f47dfa85600381111561147b5761147a613d6b565b5b334260405161148c93929190614718565b60405180910390a2505050505050565b606060006114a983611b97565b905060008167ffffffffffffffff8111156114c7576114c6613f7c565b5b6040519080825280602002602001820160405280156114f55781602001602082028036833780820191505090505b509050600080600190505b61150a600861257c565b811161159f576115198161284b565b801561155857508573ffffffffffffffffffffffffffffffffffffffff1661154082611a9c565b73ffffffffffffffffffffffffffffffffffffffff16145b1561158c5780838381518110611571576115706146a1565b5b6020026020010181815250508180611588906146d0565b9250505b8080611597906146d0565b915050611500565b50819350505050919050565b600d5481565b60006115bb6123dc565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6115f46115ee6124a5565b8261288c565b611633576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162a906147c1565b60405180910390fd5b61163e838383612921565b505050565b61164b6123dc565b60004790503373ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611696573d6000803e3d6000fd5b5050565b6116b583838360405180602001604052806000815250612199565b505050565b6000806116c63361149c565b90506000805b82518110156118da57600060038111156116e9576116e8613d6b565b5b60176000858481518110611700576116ff6146a1565b5b6020026020010151815260200190815260200160002060010160009054906101000a900460ff16600381111561173957611738613d6b565b5b036117525760018261174b919061466d565b91506118c7565b6001600381111561176657611765613d6b565b5b6017600085848151811061177d5761177c6146a1565b5b6020026020010151815260200190815260200160002060010160009054906101000a900460ff1660038111156117b6576117b5613d6b565b5b036117cf576005826117c8919061466d565b91506118c6565b600260038111156117e3576117e2613d6b565b5b601760008584815181106117fa576117f96146a1565b5b6020026020010151815260200190815260200160002060010160009054906101000a900460ff16600381111561183357611832613d6b565b5b0361184c57600f82611845919061466d565b91506118c5565b60038081111561185f5761185e613d6b565b5b60176000858481518110611876576118756146a1565b5b6020026020010151815260200190815260200160002060010160009054906101000a900460ff1660038111156118af576118ae613d6b565b5b036118c4576032826118c1919061466d565b91505b5b5b5b80806118d2906146d0565b9150506116cc565b508092505050919050565b6118ed6123dc565b60008211611930576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161192790614853565b60405180910390fd5b601480549050821115611978576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161196f906148e5565b60405180910390fd5b600081118015611989575060648111155b6119c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119bf90614977565b60405180910390fd5b60006119d383611e8e565b90506000606483476119e59190614997565b6119ef91906149d9565b905060005b84811015611a7b57828181518110611a0f57611a0e6146a1565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff166108fc8684611a3c91906149d9565b9081150290604051600060405180830381858888f19350505050158015611a67573d6000803e3d6000fd5b508080611a73906146d0565b9150506119f4565b50611a84611643565b50505050565b6060611a953361149c565b9050919050565b600080611aa883612c1a565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611b19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b1090614a56565b60405180910390fd5b80915050919050565b6000611b2d8261284b565b611b6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6390614ac2565b60405180910390fd5b6017600083815260200190815260200160002060010160009054906101000a900460ff169050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611c07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bfe90614b54565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611c566123dc565b611c606000612c57565b565b611c6a6123dc565b6001601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b3373ffffffffffffffffffffffffffffffffffffffff16611d0f82611a9c565b73ffffffffffffffffffffffffffffffffffffffff1614611d65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5c90614be6565b60405180910390fd5b611d7033838361169a565b5050565b606060018054611d83906142c3565b80601f0160208091040260200160405190810160405280929190818152602001828054611daf906142c3565b8015611dfc5780601f10611dd157610100808354040283529160200191611dfc565b820191906000526020600020905b815481529060010190602001808311611ddf57829003601f168201915b5050505050905090565b6000601560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611e635760009050611e69565b600b5490505b90565b600a5481565b600b5481565b611e8a611e836124a5565b8383612d1d565b5050565b606060008211611ed3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611eca90614c52565b60405180910390fd5b601480549050821115611f1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f1290614ce4565b60405180910390fd5b60008267ffffffffffffffff811115611f3757611f36613f7c565b5b604051908082528060200260200182016040528015611f655781602001602082028036833780820191505090505b5090506000611f72612e89565b905060005b84811015611ffa57818181518110611f9257611f916146a1565b5b6020026020010151838281518110611fad57611fac6146a1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508080611ff2906146d0565b915050611f77565b508192505050919050565b60176020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16905082565b61203e6123dc565b6000810361205e5781600e60000190816120589190614eb0565b506120bd565b6001810361207e5781600e60010190816120789190614eb0565b506120bc565b6002810361209e5781600e60020190816120989190614eb0565b506120bb565b600381036120ba5781600e60030190816120b89190614eb0565b505b5b5b5b5050565b600980546120ce906142c3565b80601f01602080910402602001604051908101604052809291908181526020018280546120fa906142c3565b80156121475780601f1061211c57610100808354040283529160200191612147565b820191906000526020600020905b81548152906001019060200180831161212a57829003601f168201915b505050505081565b6121576123dc565b6000601260006101000a81548160ff021916908315150217905550565b61217c6123dc565b80601260006101000a81548160ff02191690831515021790555050565b6121aa6121a46124a5565b8361288c565b6121e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121e0906147c1565b60405180910390fd5b6121f5848484846131e5565b50505050565b60166020528060005260406000206000915090505481565b606061221e82613241565b9050919050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6122c16123dc565b80600b819055506001601260006101000a81548160ff02191690831515021790555050565b6122ee6123dc565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361235d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161235490614ff4565b60405180910390fd5b61236681612c57565b50565b6123716123dc565b80600a8190555050565b6000634906490660e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806123d557506123d482613353565b5b9050919050565b6123e46124a5565b73ffffffffffffffffffffffffffffffffffffffff16612402611cc5565b73ffffffffffffffffffffffffffffffffffffffff1614612458576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161244f90615060565b60405180910390fd5b565b6124638161284b565b6124a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161249990614a56565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661252083611a9c565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6001816000016000828254019250508190555050565b600081600001549050919050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036125f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125f0906150cc565b60405180910390fd5b6126028161284b565b15612642576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161263990615138565b60405180910390fd5b612650600083836001613435565b6126598161284b565b15612699576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161269090615138565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46127a360008383600161343b565b5050565b6127b08261284b565b6127ef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127e6906151ca565b60405180910390fd5b8060066000848152602001908152602001600020908161280f9190614eb0565b507ff8e1a15aba9398e019f0b49df1a4fde98ee17ae345cb5f6b5e2c27f5033e8ce78260405161283f9190613cbd565b60405180910390a15050565b60008073ffffffffffffffffffffffffffffffffffffffff1661286d83612c1a565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60008061289883611a9c565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806128da57506128d98185612225565b5b8061291857508373ffffffffffffffffffffffffffffffffffffffff1661290084610aca565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff1661294182611a9c565b73ffffffffffffffffffffffffffffffffffffffff1614612997576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161298e9061525c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612a06576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129fd906152ee565b60405180910390fd5b612a138383836001613435565b8273ffffffffffffffffffffffffffffffffffffffff16612a3382611a9c565b73ffffffffffffffffffffffffffffffffffffffff1614612a89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a809061525c565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612c15838383600161343b565b505050565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612d8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d829061535a565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051612e7c9190613abe565b60405180910390a3505050565b6060600060148054905067ffffffffffffffff811115612eac57612eab613f7c565b5b604051908082528060200260200182016040528015612eda5781602001602082028036833780820191505090505b50905060005b601480549050811015612f205780828281518110612f0157612f006146a1565b5b6020026020010181815250508080612f18906146d0565b915050612ee0565b5060005b6001601480549050612f36919061537a565b8110156130c0576000600182612f4c919061466d565b90505b6014805490508110156130ac57612fbd6014848381518110612f7457612f736146a1565b5b602002602001015181548110612f8d57612f8c6146a1565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166116ba565b61301e6014858581518110612fd557612fd46146a1565b5b602002602001015181548110612fee57612fed6146a1565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166116ba565b101561309957828181518110613037576130366146a1565b5b6020026020010151838381518110613052576130516146a1565b5b602002602001015184848151811061306d5761306c6146a1565b5b60200260200101858481518110613087576130866146a1565b5b60200260200101828152508281525050505b80806130a4906146d0565b915050612f4f565b5080806130b8906146d0565b915050612f24565b50600060148054905067ffffffffffffffff8111156130e2576130e1613f7c565b5b6040519080825280602002602001820160405280156131105781602001602082028036833780820191505090505b50905060005b6014805490508110156131dc576014838281518110613138576131376146a1565b5b602002602001015181548110613151576131506146a1565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682828151811061318f5761318e6146a1565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505080806131d4906146d0565b915050613116565b50809250505090565b6131f0848484612921565b6131fc84848484613441565b61323b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161323290615420565b60405180910390fd5b50505050565b606061324c8261245a565b600060066000848152602001908152602001600020805461326c906142c3565b80601f0160208091040260200160405190810160405280929190818152602001828054613298906142c3565b80156132e55780601f106132ba576101008083540402835291602001916132e5565b820191906000526020600020905b8154815290600101906020018083116132c857829003601f168201915b5050505050905060006132f66135c8565b9050600081510361330b57819250505061334e565b60008251111561334057808260405160200161332892919061547c565b6040516020818303038152906040529250505061334e565b613349846135df565b925050505b919050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061341e57507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b8061342e575061342d82613647565b5b9050919050565b50505050565b50505050565b60006134628473ffffffffffffffffffffffffffffffffffffffff166136b1565b156135bb578373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261348b6124a5565b8786866040518563ffffffff1660e01b81526004016134ad94939291906154f5565b6020604051808303816000875af19250505080156134e957506040513d601f19601f820116820180604052508101906134e69190615556565b60015b61356b573d8060008114613519576040519150601f19603f3d011682016040523d82523d6000602084013e61351e565b606091505b506000815103613563576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161355a90615420565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149150506135c0565b600190505b949350505050565b606060405180602001604052806000815250905090565b60606135ea8261245a565b60006135f46135c8565b90506000815111613614576040518060200160405280600081525061363f565b8061361e846136d4565b60405160200161362f92919061547c565b6040516020818303038152906040525b915050919050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6060600060016136e3846137a2565b01905060008167ffffffffffffffff81111561370257613701613f7c565b5b6040519080825280601f01601f1916602001820160405280156137345781602001600182028036833780820191505090505b509050600082602001820190505b600115613797578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a858161378b5761378a6145de565b5b04945060008503613742575b819350505050919050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310613800577a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083816137f6576137f56145de565b5b0492506040810190505b6d04ee2d6d415b85acef8100000000831061383d576d04ee2d6d415b85acef81000000008381613833576138326145de565b5b0492506020810190505b662386f26fc10000831061386c57662386f26fc100008381613862576138616145de565b5b0492506010810190505b6305f5e1008310613895576305f5e100838161388b5761388a6145de565b5b0492506008810190505b61271083106138ba5761271083816138b0576138af6145de565b5b0492506004810190505b606483106138dd57606483816138d3576138d26145de565b5b0492506002810190505b600a83106138ec576001810190505b80915050919050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b61391c81613909565b811461392757600080fd5b50565b60008135905061393981613913565b92915050565b600060208284031215613955576139546138ff565b5b60006139638482850161392a565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156139a657808201518184015260208101905061398b565b60008484015250505050565b6000601f19601f8301169050919050565b60006139ce8261396c565b6139d88185613977565b93506139e8818560208601613988565b6139f1816139b2565b840191505092915050565b60006020820190508181036000830152613a1681846139c3565b905092915050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613a5381613a1e565b8114613a5e57600080fd5b50565b600081359050613a7081613a4a565b92915050565b600060208284031215613a8c57613a8b6138ff565b5b6000613a9a84828501613a61565b91505092915050565b60008115159050919050565b613ab881613aa3565b82525050565b6000602082019050613ad36000830184613aaf565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613b0482613ad9565b9050919050565b613b1481613af9565b8114613b1f57600080fd5b50565b600081359050613b3181613b0b565b92915050565b600060208284031215613b4d57613b4c6138ff565b5b6000613b5b84828501613b22565b91505092915050565b613b6d81613af9565b82525050565b6000602082019050613b886000830184613b64565b92915050565b60008060408385031215613ba557613ba46138ff565b5b6000613bb385828601613b22565b9250506020613bc48582860161392a565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613c0381613909565b82525050565b6000613c158383613bfa565b60208301905092915050565b6000602082019050919050565b6000613c3982613bce565b613c438185613bd9565b9350613c4e83613bea565b8060005b83811015613c7f578151613c668882613c09565b9750613c7183613c21565b925050600181019050613c52565b5085935050505092915050565b60006020820190508181036000830152613ca68184613c2e565b905092915050565b613cb781613909565b82525050565b6000602082019050613cd26000830184613cae565b92915050565b600080600060608486031215613cf157613cf06138ff565b5b6000613cff86828701613b22565b9350506020613d1086828701613b22565b9250506040613d218682870161392a565b9150509250925092565b60008060408385031215613d4257613d416138ff565b5b6000613d508582860161392a565b9250506020613d618582860161392a565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60048110613dab57613daa613d6b565b5b50565b6000819050613dbc82613d9a565b919050565b6000613dcc82613dae565b9050919050565b613ddc81613dc1565b82525050565b6000602082019050613df76000830184613dd3565b92915050565b613e0681613aa3565b8114613e1157600080fd5b50565b600081359050613e2381613dfd565b92915050565b60008060408385031215613e4057613e3f6138ff565b5b6000613e4e85828601613b22565b9250506020613e5f85828601613e14565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613e9e81613af9565b82525050565b6000613eb08383613e95565b60208301905092915050565b6000602082019050919050565b6000613ed482613e69565b613ede8185613e74565b9350613ee983613e85565b8060005b83811015613f1a578151613f018882613ea4565b9750613f0c83613ebc565b925050600181019050613eed565b5085935050505092915050565b60006020820190508181036000830152613f418184613ec9565b905092915050565b6000604082019050613f5e6000830185613cae565b613f6b6020830184613dd3565b9392505050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613fb4826139b2565b810181811067ffffffffffffffff82111715613fd357613fd2613f7c565b5b80604052505050565b6000613fe66138f5565b9050613ff28282613fab565b919050565b600067ffffffffffffffff82111561401257614011613f7c565b5b61401b826139b2565b9050602081019050919050565b82818337600083830152505050565b600061404a61404584613ff7565b613fdc565b90508281526020810184848401111561406657614065613f77565b5b614071848285614028565b509392505050565b600082601f83011261408e5761408d613f72565b5b813561409e848260208601614037565b91505092915050565b600080604083850312156140be576140bd6138ff565b5b600083013567ffffffffffffffff8111156140dc576140db613904565b5b6140e885828601614079565b92505060206140f98582860161392a565b9150509250929050565b600060208284031215614119576141186138ff565b5b600061412784828501613e14565b91505092915050565b600067ffffffffffffffff82111561414b5761414a613f7c565b5b614154826139b2565b9050602081019050919050565b600061417461416f84614130565b613fdc565b9050828152602081018484840111156141905761418f613f77565b5b61419b848285614028565b509392505050565b600082601f8301126141b8576141b7613f72565b5b81356141c8848260208601614161565b91505092915050565b600080600080608085870312156141eb576141ea6138ff565b5b60006141f987828801613b22565b945050602061420a87828801613b22565b935050604061421b8782880161392a565b925050606085013567ffffffffffffffff81111561423c5761423b613904565b5b614248878288016141a3565b91505092959194509250565b6000806040838503121561426b5761426a6138ff565b5b600061427985828601613b22565b925050602061428a85828601613b22565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806142db57607f821691505b6020821081036142ee576142ed614294565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000614350602183613977565b915061435b826142f4565b604082019050919050565b6000602082019050818103600083015261437f81614343565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b60006143e2603d83613977565b91506143ed82614386565b604082019050919050565b60006020820190508181036000830152614411816143d5565b9050919050565b7f596f752068617665207265616368656420746865206c696d6974206f66206d6960008201527f6e74696e67000000000000000000000000000000000000000000000000000000602082015250565b6000614474602583613977565b915061447f82614418565b604082019050919050565b600060208201905081810360008301526144a381614467565b9050919050565b7f496e73756666696369656e742065746865722073656e74000000000000000000600082015250565b60006144e0601783613977565b91506144eb826144aa565b602082019050919050565b6000602082019050818103600083015261450f816144d3565b9050919050565b6000819050919050565b61453161452c82613909565b614516565b82525050565b60008160601b9050919050565b600061454f82614537565b9050919050565b600061456182614544565b9050919050565b61457961457482613af9565b614556565b82525050565b600061458b8288614520565b60208201915061459b8287614520565b6020820191506145ab8286614520565b6020820191506145bb8285614568565b6014820191506145cb8284614568565b6014820191508190509695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061461882613909565b915061462383613909565b925082614633576146326145de565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061467882613909565b915061468383613909565b925082820190508082111561469b5761469a61463e565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006146db82613909565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361470d5761470c61463e565b5b600182019050919050565b600060608201905061472d6000830186613cae565b61473a6020830185613b64565b6147476040830184613cae565b949350505050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b60006147ab602d83613977565b91506147b68261474f565b604082019050919050565b600060208201905081810360008301526147da8161479e565b9050919050565b7f4e756d626572206f662077696e6e657273206d7573742062652067726561746560008201527f72207468616e207a65726f000000000000000000000000000000000000000000602082015250565b600061483d602b83613977565b9150614848826147e1565b604082019050919050565b6000602082019050818103600083015261486c81614830565b9050919050565b7f4e756d626572206f662077696e6e657273206578636565647320746865206e7560008201527f6d626572206f66206d696e74696e672061646472657373657300000000000000602082015250565b60006148cf603983613977565b91506148da82614873565b604082019050919050565b600060208201905081810360008301526148fe816148c2565b9050919050565b7f5265776172642070657263656e74616765206d7573742062652062657477656560008201527f6e203120616e6420313030000000000000000000000000000000000000000000602082015250565b6000614961602b83613977565b915061496c82614905565b604082019050919050565b6000602082019050818103600083015261499081614954565b9050919050565b60006149a282613909565b91506149ad83613909565b92508282026149bb81613909565b915082820484148315176149d2576149d161463e565b5b5092915050565b60006149e482613909565b91506149ef83613909565b9250826149ff576149fe6145de565b5b828204905092915050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000614a40601883613977565b9150614a4b82614a0a565b602082019050919050565b60006020820190508181036000830152614a6f81614a33565b9050919050565b7f546f6b656e20494420646f6573206e6f74206578697374000000000000000000600082015250565b6000614aac601783613977565b9150614ab782614a76565b602082019050919050565b60006020820190508181036000830152614adb81614a9f565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000614b3e602983613977565b9150614b4982614ae2565b604082019050919050565b60006020820190508181036000830152614b6d81614b31565b9050919050565b7f596f7520617265206e6f7420746865206f776e6572206f662074686973204e4660008201527f5400000000000000000000000000000000000000000000000000000000000000602082015250565b6000614bd0602183613977565b9150614bdb82614b74565b604082019050919050565b60006020820190508181036000830152614bff81614bc3565b9050919050565b7f546f70206d7573742062652067726561746572207468616e207a65726f000000600082015250565b6000614c3c601d83613977565b9150614c4782614c06565b602082019050919050565b60006020820190508181036000830152614c6b81614c2f565b9050919050565b7f546f70206578636565647320746865206e756d626572206f66206d696e74696e60008201527f6720616464726573736573000000000000000000000000000000000000000000602082015250565b6000614cce602b83613977565b9150614cd982614c72565b604082019050919050565b60006020820190508181036000830152614cfd81614cc1565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302614d667fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82614d29565b614d708683614d29565b95508019841693508086168417925050509392505050565b6000819050919050565b6000614dad614da8614da384613909565b614d88565b613909565b9050919050565b6000819050919050565b614dc783614d92565b614ddb614dd382614db4565b848454614d36565b825550505050565b600090565b614df0614de3565b614dfb818484614dbe565b505050565b5b81811015614e1f57614e14600082614de8565b600181019050614e01565b5050565b601f821115614e6457614e3581614d04565b614e3e84614d19565b81016020851015614e4d578190505b614e61614e5985614d19565b830182614e00565b50505b505050565b600082821c905092915050565b6000614e8760001984600802614e69565b1980831691505092915050565b6000614ea08383614e76565b9150826002028217905092915050565b614eb98261396c565b67ffffffffffffffff811115614ed257614ed1613f7c565b5b614edc82546142c3565b614ee7828285614e23565b600060209050601f831160018114614f1a5760008415614f08578287015190505b614f128582614e94565b865550614f7a565b601f198416614f2886614d04565b60005b82811015614f5057848901518255600182019150602085019450602081019050614f2b565b86831015614f6d5784890151614f69601f891682614e76565b8355505b6001600288020188555050505b505050505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614fde602683613977565b9150614fe982614f82565b604082019050919050565b6000602082019050818103600083015261500d81614fd1565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061504a602083613977565b915061505582615014565b602082019050919050565b600060208201905081810360008301526150798161503d565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006150b6602083613977565b91506150c182615080565b602082019050919050565b600060208201905081810360008301526150e5816150a9565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b6000615122601c83613977565b915061512d826150ec565b602082019050919050565b6000602082019050818103600083015261515181615115565b9050919050565b7f45524337323155524953746f726167653a2055524920736574206f66206e6f6e60008201527f6578697374656e7420746f6b656e000000000000000000000000000000000000602082015250565b60006151b4602e83613977565b91506151bf82615158565b604082019050919050565b600060208201905081810360008301526151e3816151a7565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b6000615246602583613977565b9150615251826151ea565b604082019050919050565b6000602082019050818103600083015261527581615239565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006152d8602483613977565b91506152e38261527c565b604082019050919050565b60006020820190508181036000830152615307816152cb565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000615344601983613977565b915061534f8261530e565b602082019050919050565b6000602082019050818103600083015261537381615337565b9050919050565b600061538582613909565b915061539083613909565b92508282039050818111156153a8576153a761463e565b5b92915050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b600061540a603283613977565b9150615415826153ae565b604082019050919050565b60006020820190508181036000830152615439816153fd565b9050919050565b600081905092915050565b60006154568261396c565b6154608185615440565b9350615470818560208601613988565b80840191505092915050565b6000615488828561544b565b9150615494828461544b565b91508190509392505050565b600081519050919050565b600082825260208201905092915050565b60006154c7826154a0565b6154d181856154ab565b93506154e1818560208601613988565b6154ea816139b2565b840191505092915050565b600060808201905061550a6000830187613b64565b6155176020830186613b64565b6155246040830185613cae565b818103606083015261553681846154bc565b905095945050505050565b60008151905061555081613a4a565b92915050565b60006020828403121561556c5761556b6138ff565b5b600061557a84828501615541565b9150509291505056fea2646970667358221220d4245e6a2082446409e06ec0349a73b6f0146e4577fb8c67a4bbc6541dcc47e464736f6c6343000812003368747470733a2f2f7265642d666c79696e672d6c796e782d3537382e6d7970696e6174612e636c6f75642f697066732f516d587352764753554869556f58764b6578635a53314855474766477067623545764337463245524166587532613f5f676c3d312a317574776763382a5f67612a4d5463794e4455344d5441354c6a45324f5441784f544d334d7a592e2a5f67615f35524d505847313454452a4d5459354d6a45794e4449794f5334314c6a45754d5459354d6a45794e4451334d4334324d4334774c6a412e68747470733a2f2f7265642d666c79696e672d6c796e782d3537382e6d7970696e6174612e636c6f75642f697066732f516d654d46445573565064646e5a73324c366d4b746373644e437159695672613759486a756a6a51663272714d443f5f676c3d312a316174356a38702a5f67612a4d5463794e4455344d5441354c6a45324f5441784f544d334d7a592e2a5f67615f35524d505847313454452a4d5459354d6a45794e4449794f5334314c6a45754d5459354d6a45794e44517a4d4334794c6a41754d412e2e68747470733a2f2f7265642d666c79696e672d6c796e782d3537382e6d7970696e6174612e636c6f75642f697066732f516d614c5a5974516b6554545855726b6f4534485247794669434736767242707445476a557469616e3772567a393f5f676c3d312a686d386b6a312a5f67612a4d5463794e4455344d5441354c6a45324f5441784f544d334d7a592e2a5f67615f35524d505847313454452a4d5459354d6a45794e4449794f5334314c6a45754d5459354d6a45794e444d334d6934324d4334774c6a412e68747470733a2f2f7265642d666c79696e672d6c796e782d3537382e6d7970696e6174612e636c6f75642f697066732f516d533558376645553459316d646a674d756e36524832644a6778784b73314b774654325476636b376d6f7470783f5f676c3d312a69326f377a682a5f67612a4d5463794e4455344d5441354c6a45324f5441784f544d334d7a592e2a5f67615f35524d505847313454452a4d5459354d6a45794e4449794f5334314c6a45754d5459354d6a45794e4455794d4334784d4334774c6a412e