60a06040526001600960166101000a81548160ff0219169083151502179055503480156200002c57600080fd5b506040516200707438038062007074833981810160405281019062000052919062000d8a565b6040518060400160405280600581526020017f44726574740000000000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f44524554540000000000000000000000000000000000000000000000000000008152508160039081620000cf919062001026565b508060049081620000e1919062001026565b50505062000104620000f8620004b960201b60201c565b620004c160201b60201c565b60006b204fce5e3e25026110000000905060007312fcc1b2849e5481d134127ceca52a575e83d8009050736bded42c6da8fbf0d2ba55b2fa120c5e0c8d789173ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1681525050620001ab306080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6200058760201b60201c565b81600a81905550603282620001c191906200116b565b600b819055506103e8600183620001d99190620011a3565b620001e591906200116b565b600c819055506000600e819055506000600f819055506000601081905550601054600f54600e54620002189190620011ee565b620002249190620011ee565b600d81905550600060128190555060006013819055506000601481905550601454601354601254620002579190620011ee565b620002639190620011ee565b60118190555060115460188190555080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000357620003496200075860201b60201c565b60016200078260201b60201c565b6200036a3060016200078260201b60201c565b6200037f61dead60016200078260201b60201c565b620003928160016200078260201b60201c565b620003b4620003a66200075860201b60201c565b60016200083d60201b60201c565b620003c73060016200083d60201b60201c565b620003dc61dead60016200083d60201b60201c565b620003f160805160016200083d60201b60201c565b620004048160016200083d60201b60201c565b62000441620004186200075860201b60201c565b600a6064856200042991906200116b565b620004359190620011a3565b620008f860201b60201c565b6200046f8160056064856200045791906200116b565b620004639190620011a3565b620008f860201b60201c565b6200049d3060556064856200048591906200116b565b620004919190620011a3565b620008f860201b60201c565b620004b083600162000a6560201b60201c565b50505062001532565b600033905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620005f9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005f090620012b0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036200066b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620006629062001348565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516200074b91906200137b565b60405180910390a3505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6200079262000b0160201b60201c565b80601960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051620008319190620013b5565b60405180910390a25050565b6200084d62000b0160201b60201c565b80601a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f4b89c347592b1d537e066cb4ed98d87696ae35164745d7e370e4add16941dc9282604051620008ec9190620013b5565b60405180910390a25050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036200096a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620009619062001422565b60405180910390fd5b6200097e6000838362000b9260201b60201c565b8060026000828254620009929190620011ee565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000a4591906200137b565b60405180910390a362000a616000838362000b9760201b60201c565b5050565b60005b825181101562000afc5781601c600085848151811062000a8d5762000a8c62001444565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808062000af39062001473565b91505062000a68565b505050565b62000b11620004b960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1662000b376200075860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000b90576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000b879062001510565b60405180910390fd5b565b505050565b505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000c008262000bb5565b810181811067ffffffffffffffff8211171562000c225762000c2162000bc6565b5b80604052505050565b600062000c3762000b9c565b905062000c45828262000bf5565b919050565b600067ffffffffffffffff82111562000c685762000c6762000bc6565b5b602082029050602081019050919050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000cab8262000c7e565b9050919050565b62000cbd8162000c9e565b811462000cc957600080fd5b50565b60008151905062000cdd8162000cb2565b92915050565b600062000cfa62000cf48462000c4a565b62000c2b565b9050808382526020820190506020840283018581111562000d205762000d1f62000c79565b5b835b8181101562000d4d578062000d38888262000ccc565b84526020840193505060208101905062000d22565b5050509392505050565b600082601f83011262000d6f5762000d6e62000bb0565b5b815162000d8184826020860162000ce3565b91505092915050565b60006020828403121562000da35762000da262000ba6565b5b600082015167ffffffffffffffff81111562000dc45762000dc362000bab565b5b62000dd28482850162000d57565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000e2e57607f821691505b60208210810362000e445762000e4362000de6565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000eae7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000e6f565b62000eba868362000e6f565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000f0762000f0162000efb8462000ed2565b62000edc565b62000ed2565b9050919050565b6000819050919050565b62000f238362000ee6565b62000f3b62000f328262000f0e565b84845462000e7c565b825550505050565b600090565b62000f5262000f43565b62000f5f81848462000f18565b505050565b5b8181101562000f875762000f7b60008262000f48565b60018101905062000f65565b5050565b601f82111562000fd65762000fa08162000e4a565b62000fab8462000e5f565b8101602085101562000fbb578190505b62000fd362000fca8562000e5f565b83018262000f64565b50505b505050565b600082821c905092915050565b600062000ffb6000198460080262000fdb565b1980831691505092915050565b600062001016838362000fe8565b9150826002028217905092915050565b620010318262000ddb565b67ffffffffffffffff8111156200104d576200104c62000bc6565b5b62001059825462000e15565b6200106682828562000f8b565b600060209050601f8311600181146200109e576000841562001089578287015190505b62001095858262001008565b86555062001105565b601f198416620010ae8662000e4a565b60005b82811015620010d857848901518255600182019150602085019450602081019050620010b1565b86831015620010f85784890151620010f4601f89168262000fe8565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620011788262000ed2565b9150620011858362000ed2565b9250826200119857620011976200110d565b5b828204905092915050565b6000620011b08262000ed2565b9150620011bd8362000ed2565b9250828202620011cd8162000ed2565b91508282048414831517620011e757620011e66200113c565b5b5092915050565b6000620011fb8262000ed2565b9150620012088362000ed2565b92508282019050808211156200122357620012226200113c565b5b92915050565b600082825260208201905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006200129860248362001229565b9150620012a5826200123a565b604082019050919050565b60006020820190508181036000830152620012cb8162001289565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006200133060228362001229565b91506200133d82620012d2565b604082019050919050565b60006020820190508181036000830152620013638162001321565b9050919050565b620013758162000ed2565b82525050565b60006020820190506200139260008301846200136a565b92915050565b60008115159050919050565b620013af8162001398565b82525050565b6000602082019050620013cc6000830184620013a4565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b60006200140a601f8362001229565b91506200141782620013d2565b602082019050919050565b600060208201905081810360008301526200143d81620013fb565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000620014808262000ed2565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203620014b557620014b46200113c565b5b600182019050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000620014f860208362001229565b91506200150582620014c0565b602082019050919050565b600060208201905081810360008301526200152b81620014e9565b9050919050565b608051615ae76200158d60003960008181610e070152818161206801528181612113015281816122cd015281816123ca01528181613dcf01528181613eb001528181613ed701528181613f730152613f9a0152615ae76000f3fe6080604052600436106102975760003560e01c80637571336a1161015a578063c24a7a8c116100c1578063dd62ed3e1161007a578063dd62ed3e146109e9578063e01af92c14610a26578063e2f4560514610a4f578063e8078d9414610a7a578063f2fde38b14610a91578063f8b45b0514610aba5761029e565b8063c24a7a8c146108ed578063c3f70b5214610916578063cb96372814610941578063d46980161461096a578063d7d1d10e14610995578063d85ba063146109be5761029e565b8063a457c2d711610113578063a457c2d7146107cb578063a9059cbb14610808578063afa4f3b214610845578063bbc0c7421461086e578063c024666814610899578063c04a5414146108c25761029e565b80637571336a146106df57806375f0a87414610708578063860a32ec146107335780638a8c523c1461075e5780638da5cb5b1461077557806395d89b41146107a05761029e565b806339509351116101fe5780636a486a8e116101b75780636a486a8e146105f55780636ddd17131461062057806370a082311461064b578063715018a61461068857806372ac24861461069f578063751039fc146106c85761029e565b806339509351146104d557806342966c681461051257806349bd5a5e1461053b5780634fbee193146105665780635d098b38146105a357806367243482146105cc5761029e565b806318160ddd1161025057806318160ddd146103b157806318d9ceae146103dc57806323b872dd1461041957806327c8f83514610456578063296f0a0c14610481578063313ce567146104aa5761029e565b806306fdde03146102a3578063095ea7b3146102ce5780630d075d9c1461030b5780630f683e9014610334578063155ca7c11461035d5780631694505e146103865761029e565b3661029e57005b600080fd5b3480156102af57600080fd5b506102b8610ae5565b6040516102c591906140f9565b60405180910390f35b3480156102da57600080fd5b506102f560048036038101906102f091906141b9565b610b77565b6040516103029190614214565b60405180910390f35b34801561031757600080fd5b50610332600480360381019061032d919061422f565b610b9a565b005b34801561034057600080fd5b5061035b6004803603810190610356919061422f565b610c3a565b005b34801561036957600080fd5b50610384600480360381019061037f9190614313565b610ce3565b005b34801561039257600080fd5b5061039b610e05565b6040516103a891906143d2565b60405180910390f35b3480156103bd57600080fd5b506103c6610e29565b6040516103d391906143fc565b60405180910390f35b3480156103e857600080fd5b5061040360048036038101906103fe9190614417565b610e33565b6040516104109190614214565b60405180910390f35b34801561042557600080fd5b50610440600480360381019061043b9190614444565b610e89565b60405161044d9190614214565b60405180910390f35b34801561046257600080fd5b5061046b610eb8565b60405161047891906144a6565b60405180910390f35b34801561048d57600080fd5b506104a860048036038101906104a39190614417565b610ebe565b005b3480156104b657600080fd5b506104bf61101d565b6040516104cc91906144dd565b60405180910390f35b3480156104e157600080fd5b506104fc60048036038101906104f791906141b9565b611026565b6040516105099190614214565b60405180910390f35b34801561051e57600080fd5b50610539600480360381019061053491906144f8565b61105d565b005b34801561054757600080fd5b5061055061106a565b60405161055d91906144a6565b60405180910390f35b34801561057257600080fd5b5061058d60048036038101906105889190614417565b611090565b60405161059a9190614214565b60405180910390f35b3480156105af57600080fd5b506105ca60048036038101906105c59190614417565b6110e6565b005b3480156105d857600080fd5b506105f360048036038101906105ee919061457b565b611245565b005b34801561060157600080fd5b5061060a611421565b60405161061791906143fc565b60405180910390f35b34801561062c57600080fd5b50610635611427565b6040516106429190614214565b60405180910390f35b34801561065757600080fd5b50610672600480360381019061066d9190614417565b61143a565b60405161067f91906143fc565b60405180910390f35b34801561069457600080fd5b5061069d611482565b005b3480156106ab57600080fd5b506106c660048036038101906106c19190614417565b611496565b005b3480156106d457600080fd5b506106dd6115f5565b005b3480156106eb57600080fd5b50610706600480360381019061070191906145fc565b611628565b005b34801561071457600080fd5b5061071d6116d9565b60405161072a91906144a6565b60405180910390f35b34801561073f57600080fd5b506107486116ff565b6040516107559190614214565b60405180910390f35b34801561076a57600080fd5b50610773611712565b005b34801561078157600080fd5b5061078a6117a2565b60405161079791906144a6565b60405180910390f35b3480156107ac57600080fd5b506107b56117cc565b6040516107c291906140f9565b60405180910390f35b3480156107d757600080fd5b506107f260048036038101906107ed91906141b9565b61185e565b6040516107ff9190614214565b60405180910390f35b34801561081457600080fd5b5061082f600480360381019061082a91906141b9565b6118d5565b60405161083c9190614214565b60405180910390f35b34801561085157600080fd5b5061086c600480360381019061086791906144f8565b6118f8565b005b34801561087a57600080fd5b506108836119d1565b6040516108909190614214565b60405180910390f35b3480156108a557600080fd5b506108c060048036038101906108bb91906145fc565b6119e4565b005b3480156108ce57600080fd5b506108d7611a95565b6040516108e491906144a6565b60405180910390f35b3480156108f957600080fd5b50610914600480360381019061090f919061463c565b611abb565b005b34801561092257600080fd5b5061092b611b9b565b60405161093891906143fc565b60405180910390f35b34801561094d57600080fd5b5061096860048036038101906109639190614417565b611ba1565b005b34801561097657600080fd5b5061097f611e0e565b60405161098c91906144a6565b60405180910390f35b3480156109a157600080fd5b506109bc60048036038101906109b79190614313565b611e34565b005b3480156109ca57600080fd5b506109d3611f56565b6040516109e091906143fc565b60405180910390f35b3480156109f557600080fd5b50610a106004803603810190610a0b919061467c565b611f5c565b604051610a1d91906143fc565b60405180910390f35b348015610a3257600080fd5b50610a4d6004803603810190610a4891906146bc565b611fe3565b005b348015610a5b57600080fd5b50610a64612008565b604051610a7191906143fc565b60405180910390f35b348015610a8657600080fd5b50610a8f61200e565b005b348015610a9d57600080fd5b50610ab86004803603810190610ab39190614417565b612484565b005b348015610ac657600080fd5b50610acf612507565b604051610adc91906143fc565b60405180910390f35b606060038054610af490614718565b80601f0160208091040260200160405190810160405280929190818152602001828054610b2090614718565b8015610b6d5780601f10610b4257610100808354040283529160200191610b6d565b820191906000526020600020905b815481529060010190602001808311610b5057829003601f168201915b5050505050905090565b600080610b8261250d565b9050610b8f818585612515565b600191505092915050565b610ba26126de565b61012c818385610bb29190614778565b610bbc9190614778565b1115610bfd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bf49061481e565b60405180910390fd5b82600e8190555081600f8190555080601081905550601054600f54600e54610c259190614778565b610c2f9190614778565b600d81905550505050565b610c426126de565b61012c818385610c529190614778565b610c5c9190614778565b1115610c9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c949061481e565b60405180910390fd5b826012819055508160138190555080601481905550601454601354601254610cc59190614778565b610ccf9190614778565b601181905550601154601881905550505050565b610ceb6126de565b60005b83839050811015610dff578160196000868685818110610d1157610d1061483e565b5b9050602002016020810190610d269190614417565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550838382818110610d8a57610d8961483e565b5b9050602002016020810190610d9f9190614417565b73ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df783604051610de49190614214565b60405180910390a28080610df79061486d565b915050610cee565b50505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600254905090565b6000601a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600080610e9461250d565b9050610ea185828561275c565b610eac8585856127e8565b60019150509392505050565b61dead81565b610ec66126de565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2c90614901565b60405180910390fd5b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f3e0ea4f8339b6050ff814971a9814aa39176c149fcf185975c219f33db2342db60405160405180910390a35050565b60006012905090565b60008061103161250d565b90506110528185856110438589611f5c565b61104d9190614778565b612515565b600191505092915050565b6110673382613453565b50565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000601960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6110ee6126de565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361115d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115490614901565b60405180910390fd5b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fa751787977eeb3902e30e1d19ca00c6ad274a1f622c31a206e32366700b0567460405160405180910390a35050565b61124d6126de565b60fa848490501115611294576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161128b9061496d565b60405180910390fd5b8181905084849050146112dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d3906149d9565b60405180910390fd5b6000805b85859050811015611325578383828181106112fe576112fd61483e565b5b90506020020135826113109190614778565b9150808061131d9061486d565b9150506112e0565b50806113303361143a565b1015611371576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161136890614a45565b60405180910390fd5b60005b858590508110156113dd576113ca338787848181106113965761139561483e565b5b90506020020160208101906113ab9190614417565b8686858181106113be576113bd61483e565b5b90506020020135613620565b80806113d59061486d565b915050611374565b507f71cc7095cc35ed4701c217a8efb440732eb0737da67f6548c008ac26fba954648585905082604051611412929190614a65565b60405180910390a15050505050565b60115481565b600960159054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61148a6126de565b6114946000613896565b565b61149e6126de565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361150d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161150490614901565b60405180910390fd5b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167ffaf1b77ed79f6e898c44dd8ab36b330c7b2fd39bcaab05ed6362480df870396560405160405180910390a35050565b6115fd6126de565b6000600960166101000a81548160ff021916908315150217905550611620610e29565b600b81905550565b6116306126de565b80601a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f4b89c347592b1d537e066cb4ed98d87696ae35164745d7e370e4add16941dc92826040516116cd9190614214565b60405180910390a25050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600960169054906101000a900460ff1681565b61171a6126de565b600960149054906101000a900460ff161561176a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176190614ada565b60405180910390fd5b6001600960146101000a81548160ff0219169083151502179055506001600960156101000a81548160ff021916908315150217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546117db90614718565b80601f016020809104026020016040519081016040528092919081815260200182805461180790614718565b80156118545780601f1061182957610100808354040283529160200191611854565b820191906000526020600020905b81548152906001019060200180831161183757829003601f168201915b5050505050905090565b60008061186961250d565b905060006118778286611f5c565b9050838110156118bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b390614b6c565b60405180910390fd5b6118c98286868403612515565b60019250505092915050565b6000806118e061250d565b90506118ed8185856127e8565b600191505092915050565b6119006126de565b620186a0600161190e610e29565b6119189190614b8c565b6119229190614bfd565b811015611964576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161195b90614ca0565b60405180910390fd5b6103e86005611971610e29565b61197b9190614b8c565b6119859190614bfd565b8111156119c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119be90614d32565b60405180910390fd5b80600c8190555050565b600960149054906101000a900460ff1681565b6119ec6126de565b80601960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051611a899190614214565b60405180910390a25050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611ac36126de565b6103e86005611ad0610e29565b611ada9190614b8c565b611ae49190614bfd565b821015611b26576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b1d90614dc4565b60405180910390fd5b6103e86005611b33610e29565b611b3d9190614b8c565b611b479190614bfd565b811015611b89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b8090614e56565b60405180910390fd5b81600a8190555080600b819055505050565b600a5481565b611ba96126de565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611c4f573373ffffffffffffffffffffffffffffffffffffffff1647604051611c0290614ea7565b60006040518083038185875af1925050503d8060008114611c3f576040519150601f19603f3d011682016040523d82523d6000602084013e611c44565b606091505b505080915050611e0a565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611c8a91906144a6565b602060405180830381865afa158015611ca7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ccb9190614ed1565b11611d0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d0290614f4a565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611d4691906144a6565b602060405180830381865afa158015611d63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d879190614ed1565b90508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401611dc4929190614f6a565b6020604051808303816000875af1158015611de3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e079190614fa8565b50505b5050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611e3c6126de565b60005b83839050811015611f505781601a6000868685818110611e6257611e6161483e565b5b9050602002016020810190611e779190614417565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550838382818110611edb57611eda61483e565b5b9050602002016020810190611ef09190614417565b73ffffffffffffffffffffffffffffffffffffffff167f4b89c347592b1d537e066cb4ed98d87696ae35164745d7e370e4add16941dc9283604051611f359190614214565b60405180910390a28080611f489061486d565b915050611e3f565b50505050565b600d5481565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611feb6126de565b80600960156101000a81548160ff02191690831515021790555050565b600c5481565b6120166126de565b600960149054906101000a900460ff1615612066576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161205d90614ada565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120f59190614fea565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396307f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561217c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121a09190614fea565b6040518363ffffffff1660e01b81526004016121bd929190615017565b6020604051808303816000875af11580156121dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122009190614fea565b600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061228d30600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff612515565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b37f00000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161232a929190614f6a565b6020604051808303816000875af1158015612349573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061236d9190614fa8565b5061239b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600161395c565b6123c8600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001611628565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f305d719473061240f3061143a565b60008061241a6117a2565b426040518863ffffffff1660e01b815260040161243c9695949392919061507b565b60606040518083038185885af115801561245a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061247f91906150dc565b505050565b61248c6126de565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036124fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124f2906151a1565b60405180910390fd5b61250481613896565b50565b600b5481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612584576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161257b90615233565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036125f3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125ea906152c5565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516126d191906143fc565b60405180910390a3505050565b6126e661250d565b73ffffffffffffffffffffffffffffffffffffffff166127046117a2565b73ffffffffffffffffffffffffffffffffffffffff161461275a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161275190615331565b60405180910390fd5b565b60006127688484611f5c565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146127e257818110156127d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127cb9061539d565b60405180910390fd5b6127e18484848403612515565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612857576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161284e9061542f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036128c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128bd906154c1565b60405180910390fd5b600081036128df576128da83836000613620565b61344e565b6128e76117a2565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561295557506129256117a2565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561298e5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156129c8575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156129e15750600960179054906101000a900460ff16155b15612f6b57600960149054906101000a900460ff16612adb57601960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680612a9b5750601960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b612ada576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ad19061552d565b60405180910390fd5b5b600960169054906101000a900460ff168015612b445750600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b15612c8257600b5481612b568461143a565b612b609190614778565b1115612ba1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b9890615599565b60405180910390fd5b601c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680612c425750601c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b612c81576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c7890615599565b60405180910390fd5b5b601b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015612d255750601a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612dcc57600a54811115612d6f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d669061562b565b60405180910390fd5b600b54612d7b8361143a565b82612d869190614778565b1115612dc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612dbe90615697565b60405180910390fd5b612f6a565b601b60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015612e6f5750601a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612ebe57600a54811115612eb9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612eb090615729565b60405180910390fd5b612f69565b601a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16612f6857600b54612f1b8361143a565b82612f269190614778565b1115612f67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f5e90615697565b60405180910390fd5b5b5b5b5b6000612f763061143a565b90506000600c548210159050808015612f9b5750600960159054906101000a900460ff165b8015612fb45750600960179054906101000a900460ff16155b801561300a5750601b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156130605750601960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156130b65750601960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156130fa576001600960176101000a81548160ff0219169083151502179055506130de6139fd565b6000600960176101000a81548160ff0219169083151502179055505b6000600960179054906101000a900460ff16159050601960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806131b05750601960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156131ba57600090505b6000811561343557601b60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561321d57506000601154115b156132eb5761324b61271061323d60115488613ce490919063ffffffff16565b613cfa90919063ffffffff16565b90506011546014548261325e9190614b8c565b6132689190614bfd565b601760008282546132799190614778565b92505081905550601154601254826132919190614b8c565b61329b9190614bfd565b601560008282546132ac9190614778565b92505081905550601154601354826132c49190614b8c565b6132ce9190614bfd565b601660008282546132df9190614778565b92505081905550613411565b601b60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561334657506000600d54115b1561341057613374612710613366600d5488613ce490919063ffffffff16565b613cfa90919063ffffffff16565b9050600d54601054826133879190614b8c565b6133919190614bfd565b601760008282546133a29190614778565b92505081905550600d54600e54826133ba9190614b8c565b6133c49190614bfd565b601560008282546133d59190614778565b92505081905550600d54600f54826133ed9190614b8c565b6133f79190614bfd565b601660008282546134089190614778565b925050819055505b5b600081111561342657613425873083613620565b5b80856134329190615749565b94505b613440878787613620565b601854601181905550505050505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036134c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134b9906157ef565b60405180910390fd5b6134ce82600083613d10565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015613554576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161354b90615881565b60405180910390fd5b8181036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600260008282540392505081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161360791906143fc565b60405180910390a361361b83600084613d15565b505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361368f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016136869061542f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036136fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016136f5906154c1565b60405180910390fd5b613709838383613d10565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508181101561378f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161378690615913565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161387d91906143fc565b60405180910390a3613890848484613d15565b50505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b80601b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b6000613a083061143a565b90506000601654601554601754613a1f9190614778565b613a299190614778565b9050600080831480613a3b5750600082145b15613a4857505050613ce2565b600a600c54613a579190614b8c565b831115613a7057600a600c54613a6d9190614b8c565b92505b600060028360175486613a839190614b8c565b613a8d9190614bfd565b613a979190614bfd565b90506000613aae8286613d1a90919063ffffffff16565b90506000479050613abe82613d30565b6000613ad38247613d1a90919063ffffffff16565b90506000613afe87613af060155485613ce490919063ffffffff16565b613cfa90919063ffffffff16565b90506000613b2988613b1b60165486613ce490919063ffffffff16565b613cfa90919063ffffffff16565b90506000818385613b3a9190615749565b613b449190615749565b9050600060178190555060006015819055506000601681905550600087118015613b6e5750600081115b15613bbb57613b7d8782613f6d565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618682601754604051613bb293929190615933565b60405180910390a15b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682604051613c0190614ea7565b60006040518083038185875af1925050503d8060008114613c3e576040519150601f19603f3d011682016040523d82523d6000602084013e613c43565b606091505b505080985050600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1647604051613c8f90614ea7565b60006040518083038185875af1925050503d8060008114613ccc576040519150601f19603f3d011682016040523d82523d6000602084013e613cd1565b606091505b505080985050505050505050505050505b565b60008183613cf29190614b8c565b905092915050565b60008183613d089190614bfd565b905092915050565b505050565b505050565b60008183613d289190615749565b905092915050565b6000600267ffffffffffffffff811115613d4d57613d4c61596a565b5b604051908082528060200260200182016040528015613d7b5781602001602082028036833780820191505090505b5090503081600081518110613d9357613d9261483e565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613e38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e5c9190614fea565b81600181518110613e7057613e6f61483e565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050613ed5307f000000000000000000000000000000000000000000000000000000000000000084612515565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401613f37959493929190615a57565b600060405180830381600087803b158015613f5157600080fd5b505af1158015613f65573d6000803e3d6000fd5b505050505050565b613f98307f000000000000000000000000000000000000000000000000000000000000000084612515565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f305d719823085600080600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518863ffffffff1660e01b815260040161401f9695949392919061507b565b60606040518083038185885af115801561403d573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061406291906150dc565b5050505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156140a3578082015181840152602081019050614088565b60008484015250505050565b6000601f19601f8301169050919050565b60006140cb82614069565b6140d58185614074565b93506140e5818560208601614085565b6140ee816140af565b840191505092915050565b6000602082019050818103600083015261411381846140c0565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061415082614125565b9050919050565b61416081614145565b811461416b57600080fd5b50565b60008135905061417d81614157565b92915050565b6000819050919050565b61419681614183565b81146141a157600080fd5b50565b6000813590506141b38161418d565b92915050565b600080604083850312156141d0576141cf61411b565b5b60006141de8582860161416e565b92505060206141ef858286016141a4565b9150509250929050565b60008115159050919050565b61420e816141f9565b82525050565b60006020820190506142296000830184614205565b92915050565b6000806000606084860312156142485761424761411b565b5b6000614256868287016141a4565b9350506020614267868287016141a4565b9250506040614278868287016141a4565b9150509250925092565b600080fd5b600080fd5b600080fd5b60008083601f8401126142a7576142a6614282565b5b8235905067ffffffffffffffff8111156142c4576142c3614287565b5b6020830191508360208202830111156142e0576142df61428c565b5b9250929050565b6142f0816141f9565b81146142fb57600080fd5b50565b60008135905061430d816142e7565b92915050565b60008060006040848603121561432c5761432b61411b565b5b600084013567ffffffffffffffff81111561434a57614349614120565b5b61435686828701614291565b93509350506020614369868287016142fe565b9150509250925092565b6000819050919050565b600061439861439361438e84614125565b614373565b614125565b9050919050565b60006143aa8261437d565b9050919050565b60006143bc8261439f565b9050919050565b6143cc816143b1565b82525050565b60006020820190506143e760008301846143c3565b92915050565b6143f681614183565b82525050565b600060208201905061441160008301846143ed565b92915050565b60006020828403121561442d5761442c61411b565b5b600061443b8482850161416e565b91505092915050565b60008060006060848603121561445d5761445c61411b565b5b600061446b8682870161416e565b935050602061447c8682870161416e565b925050604061448d868287016141a4565b9150509250925092565b6144a081614145565b82525050565b60006020820190506144bb6000830184614497565b92915050565b600060ff82169050919050565b6144d7816144c1565b82525050565b60006020820190506144f260008301846144ce565b92915050565b60006020828403121561450e5761450d61411b565b5b600061451c848285016141a4565b91505092915050565b60008083601f84011261453b5761453a614282565b5b8235905067ffffffffffffffff81111561455857614557614287565b5b6020830191508360208202830111156145745761457361428c565b5b9250929050565b600080600080604085870312156145955761459461411b565b5b600085013567ffffffffffffffff8111156145b3576145b2614120565b5b6145bf87828801614291565b9450945050602085013567ffffffffffffffff8111156145e2576145e1614120565b5b6145ee87828801614525565b925092505092959194509250565b600080604083850312156146135761461261411b565b5b60006146218582860161416e565b9250506020614632858286016142fe565b9150509250929050565b600080604083850312156146535761465261411b565b5b6000614661858286016141a4565b9250506020614672858286016141a4565b9150509250929050565b600080604083850312156146935761469261411b565b5b60006146a18582860161416e565b92505060206146b28582860161416e565b9150509250929050565b6000602082840312156146d2576146d161411b565b5b60006146e0848285016142fe565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061473057607f821691505b602082108103614743576147426146e9565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061478382614183565b915061478e83614183565b92508282019050808211156147a6576147a5614749565b5b92915050565b7f45524332303a204d757374206b6565702066656573206174203325206f72206c60008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000614808602383614074565b9150614813826147ac565b604082019050919050565b60006020820190508181036000830152614837816147fb565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061487882614183565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036148aa576148a9614749565b5b600182019050919050565b7f45524332303a2041646472657373203000000000000000000000000000000000600082015250565b60006148eb601083614074565b91506148f6826148b5565b602082019050919050565b6000602082019050818103600083015261491a816148de565b9050919050565b7f4d6f7265207468616e203235302077616c6c6574730000000000000000000000600082015250565b6000614957601583614074565b915061496282614921565b602082019050919050565b600060208201905081810360008301526149868161494a565b9050919050565b7f4c697374206c656e677468206d69736d61746368000000000000000000000000600082015250565b60006149c3601483614074565b91506149ce8261498d565b602082019050919050565b600060208201905081810360008301526149f2816149b6565b9050919050565b7f546f6b656e2062616c616e636520746f6f206c6f770000000000000000000000600082015250565b6000614a2f601583614074565b9150614a3a826149f9565b602082019050919050565b60006020820190508181036000830152614a5e81614a22565b9050919050565b6000604082019050614a7a60008301856143ed565b614a8760208301846143ed565b9392505050565b7f54726164696e6720616c7265616479206163746976652e000000000000000000600082015250565b6000614ac4601783614074565b9150614acf82614a8e565b602082019050919050565b60006020820190508181036000830152614af381614ab7565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000614b56602583614074565b9150614b6182614afa565b604082019050919050565b60006020820190508181036000830152614b8581614b49565b9050919050565b6000614b9782614183565b9150614ba283614183565b9250828202614bb081614183565b91508282048414831517614bc757614bc6614749565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614c0882614183565b9150614c1383614183565b925082614c2357614c22614bce565b5b828204905092915050565b7f45524332303a205377617020616d6f756e742063616e6e6f74206265206c6f7760008201527f6572207468616e20302e3030312520746f74616c20737570706c792e00000000602082015250565b6000614c8a603c83614074565b9150614c9582614c2e565b604082019050919050565b60006020820190508181036000830152614cb981614c7d565b9050919050565b7f45524332303a205377617020616d6f756e742063616e6e6f742062652068696760008201527f686572207468616e20302e352520746f74616c20737570706c792e0000000000602082015250565b6000614d1c603b83614074565b9150614d2782614cc0565b604082019050919050565b60006020820190508181036000830152614d4b81614d0f565b9050919050565b7f45524332303a2043616e6e6f7420736574206d617854786e206c6f776572207460008201527f68616e20302e3525000000000000000000000000000000000000000000000000602082015250565b6000614dae602883614074565b9150614db982614d52565b604082019050919050565b60006020820190508181036000830152614ddd81614da1565b9050919050565b7f45524332303a2043616e6e6f7420736574206d617857616c6c6574206c6f776560008201527f72207468616e20302e3525000000000000000000000000000000000000000000602082015250565b6000614e40602b83614074565b9150614e4b82614de4565b604082019050919050565b60006020820190508181036000830152614e6f81614e33565b9050919050565b600081905092915050565b50565b6000614e91600083614e76565b9150614e9c82614e81565b600082019050919050565b6000614eb282614e84565b9150819050919050565b600081519050614ecb8161418d565b92915050565b600060208284031215614ee757614ee661411b565b5b6000614ef584828501614ebc565b91505092915050565b7f4e6f20746f6b656e730000000000000000000000000000000000000000000000600082015250565b6000614f34600983614074565b9150614f3f82614efe565b602082019050919050565b60006020820190508181036000830152614f6381614f27565b9050919050565b6000604082019050614f7f6000830185614497565b614f8c60208301846143ed565b9392505050565b600081519050614fa2816142e7565b92915050565b600060208284031215614fbe57614fbd61411b565b5b6000614fcc84828501614f93565b91505092915050565b600081519050614fe481614157565b92915050565b60006020828403121561500057614fff61411b565b5b600061500e84828501614fd5565b91505092915050565b600060408201905061502c6000830185614497565b6150396020830184614497565b9392505050565b6000819050919050565b600061506561506061505b84615040565b614373565b614183565b9050919050565b6150758161504a565b82525050565b600060c0820190506150906000830189614497565b61509d60208301886143ed565b6150aa604083018761506c565b6150b7606083018661506c565b6150c46080830185614497565b6150d160a08301846143ed565b979650505050505050565b6000806000606084860312156150f5576150f461411b565b5b600061510386828701614ebc565b935050602061511486828701614ebc565b925050604061512586828701614ebc565b9150509250925092565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061518b602683614074565b91506151968261512f565b604082019050919050565b600060208201905081810360008301526151ba8161517e565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061521d602483614074565b9150615228826151c1565b604082019050919050565b6000602082019050818103600083015261524c81615210565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006152af602283614074565b91506152ba82615253565b604082019050919050565b600060208201905081810360008301526152de816152a2565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061531b602083614074565b9150615326826152e5565b602082019050919050565b6000602082019050818103600083015261534a8161530e565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000615387601d83614074565b915061539282615351565b602082019050919050565b600060208201905081810360008301526153b68161537a565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000615419602583614074565b9150615424826153bd565b604082019050919050565b600060208201905081810360008301526154488161540c565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006154ab602383614074565b91506154b68261544f565b604082019050919050565b600060208201905081810360008301526154da8161549e565b9050919050565b7f45524332303a2054726164696e67206973206e6f74206163746976652e000000600082015250565b6000615517601d83614074565b9150615522826154e1565b602082019050919050565b600060208201905081810360008301526155468161550a565b9050919050565b7f466f726269640000000000000000000000000000000000000000000000000000600082015250565b6000615583600683614074565b915061558e8261554d565b602082019050919050565b600060208201905081810360008301526155b281615576565b9050919050565b7f45524332303a20427579207472616e7366657220616d6f756e7420657863656560008201527f647320746865206d61785472616e73616374696f6e2e00000000000000000000602082015250565b6000615615603683614074565b9150615620826155b9565b604082019050919050565b6000602082019050818103600083015261564481615608565b9050919050565b7f45524332303a204d61782077616c6c6574206578636565646564000000000000600082015250565b6000615681601a83614074565b915061568c8261564b565b602082019050919050565b600060208201905081810360008301526156b081615674565b9050919050565b7f45524332303a2053656c6c207472616e7366657220616d6f756e74206578636560008201527f65647320746865206d61785472616e73616374696f6e2e000000000000000000602082015250565b6000615713603783614074565b915061571e826156b7565b604082019050919050565b6000602082019050818103600083015261574281615706565b9050919050565b600061575482614183565b915061575f83614183565b925082820390508181111561577757615776614749565b5b92915050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b60006157d9602183614074565b91506157e48261577d565b604082019050919050565b60006020820190508181036000830152615808816157cc565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b600061586b602283614074565b91506158768261580f565b604082019050919050565b6000602082019050818103600083015261589a8161585e565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006158fd602683614074565b9150615908826158a1565b604082019050919050565b6000602082019050818103600083015261592c816158f0565b9050919050565b600060608201905061594860008301866143ed565b61595560208301856143ed565b61596260408301846143ed565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6159ce81614145565b82525050565b60006159e083836159c5565b60208301905092915050565b6000602082019050919050565b6000615a0482615999565b615a0e81856159a4565b9350615a19836159b5565b8060005b83811015615a4a578151615a3188826159d4565b9750615a3c836159ec565b925050600181019050615a1d565b5085935050505092915050565b600060a082019050615a6c60008301886143ed565b615a79602083018761506c565b8181036040830152615a8b81866159f9565b9050615a9a6060830185614497565b615aa760808301846143ed565b969550505050505056fea2646970667358221220edba7a84db9b9c19f75e1c9f287e070d7aa8596166e96f9aef2452b2b48e019c64736f6c634300081100330000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000000200000000000000000000000012fcc1b2849e5481d134127ceca52a575e83d8000000000000000000000000002e84dbd2af8f01dc91d80faaa2f0d59164247a58