60c06040526001600b60006101000a81548160ff0219169083151502179055506000600b60016101000a81548160ff0219169083151502179055506000600b60026101000a81548160ff0219169083151502179055506000600b60036101000a81548160ff0219169083151502179055506001601b60006101000a81548160ff0219169083151502179055503480156200009857600080fd5b506040518060400160405280600b81526020017f4c6974746c6520504550450000000000000000000000000000000000000000008152506040518060400160405280600781526020017f4c69745045504500000000000000000000000000000000000000000000000000815250816003908162000116919062000dcd565b50806004908162000128919062000dcd565b5050506200014b6200013f6200061460201b60201c565b6200061c60201b60201c565b6000734cf76043b3f97ba06917cbd90f9e3a2aac1b306e905062000177816001620006e260201b60201c565b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021d919062000f1e565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000285573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ab919062000f1e565b6040518363ffffffff1660e01b8152600401620002ca92919062000f61565b6020604051808303816000875af1158015620002ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000310919062000f1e565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250506200035860a0516001620006e260201b60201c565b6200036d60a0516001620007cc60201b60201c565b60008060006002905060008060006002905060006c01431e0fae6d7217caa000000090506b06765c793fa10079d00000006008819055506b06765c793fa10079d0000000600a81905550620186a0600582620003ca919062000fbd565b620003d6919062001037565b60098190555086600e8190555085600f8190555084601081905550601054600f54600e546200040691906200106f565b6200041291906200106f565b600d819055508360128190555082601381905550816014819055506014546013546012546200044291906200106f565b6200044e91906200106f565b60118190555073834d15d6f8b710e4a78be60df7acb397a5072747600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620004b96200086d60201b60201c565b600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200051b6200050d6200086d60201b60201c565b60016200089760201b60201c565b6200052e3060016200089760201b60201c565b6200054361dead60016200089760201b60201c565b62000565620005576200086d60201b60201c565b6001620006e260201b60201c565b62000578306001620006e260201b60201c565b6200058d61dead6001620006e260201b60201c565b6001601c6000620005a36200086d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620006063382620009d160201b60201c565b505050505050505062001207565b600033905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620006f26200061460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620007186200086d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000771576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000768906200110b565b60405180910390fd5b80601960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b80601a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b620008a76200061460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620008cd6200086d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000926576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200091d906200110b565b60405180910390fd5b80601860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051620009c591906200114a565b60405180910390a25050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000a43576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000a3a90620011b7565b60405180910390fd5b62000a576000838362000b4960201b60201c565b806002600082825462000a6b91906200106f565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000ac291906200106f565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000b299190620011ea565b60405180910390a362000b456000838362000b4e60201b60201c565b5050565b505050565b505050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000bd557607f821691505b60208210810362000beb5762000bea62000b8d565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000c557fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000c16565b62000c61868362000c16565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000cae62000ca862000ca28462000c79565b62000c83565b62000c79565b9050919050565b6000819050919050565b62000cca8362000c8d565b62000ce262000cd98262000cb5565b84845462000c23565b825550505050565b600090565b62000cf962000cea565b62000d0681848462000cbf565b505050565b5b8181101562000d2e5762000d2260008262000cef565b60018101905062000d0c565b5050565b601f82111562000d7d5762000d478162000bf1565b62000d528462000c06565b8101602085101562000d62578190505b62000d7a62000d718562000c06565b83018262000d0b565b50505b505050565b600082821c905092915050565b600062000da26000198460080262000d82565b1980831691505092915050565b600062000dbd838362000d8f565b9150826002028217905092915050565b62000dd88262000b53565b67ffffffffffffffff81111562000df45762000df362000b5e565b5b62000e00825462000bbc565b62000e0d82828562000d32565b600060209050601f83116001811462000e45576000841562000e30578287015190505b62000e3c858262000daf565b86555062000eac565b601f19841662000e558662000bf1565b60005b8281101562000e7f5784890151825560018201915060208501945060208101905062000e58565b8683101562000e9f578489015162000e9b601f89168262000d8f565b8355505b6001600288020188555050505b505050505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000ee68262000eb9565b9050919050565b62000ef88162000ed9565b811462000f0457600080fd5b50565b60008151905062000f188162000eed565b92915050565b60006020828403121562000f375762000f3662000eb4565b5b600062000f478482850162000f07565b91505092915050565b62000f5b8162000ed9565b82525050565b600060408201905062000f78600083018562000f50565b62000f87602083018462000f50565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000fca8262000c79565b915062000fd78362000c79565b925082820262000fe78162000c79565b9150828204841483151762001001576200100062000f8e565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620010448262000c79565b9150620010518362000c79565b92508262001064576200106362001008565b5b828204905092915050565b60006200107c8262000c79565b9150620010898362000c79565b9250828201905080821115620010a457620010a362000f8e565b5b92915050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000620010f3602083620010aa565b91506200110082620010bb565b602082019050919050565b600060208201905081810360008301526200112681620010e4565b9050919050565b60008115159050919050565b62001144816200112d565b82525050565b600060208201905062001161600083018462001139565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b60006200119f601f83620010aa565b9150620011ac8262001167565b602082019050919050565b60006020820190508181036000830152620011d28162001190565b9050919050565b620011e48162000c79565b82525050565b6000602082019050620012016000830184620011d9565b92915050565b60805160a051615e5a6200125e6000396000818161149a01528181611f340152612c22015260008181610fc2015281816143f8015281816144d9015281816145000152818161459c01526145c30152615e5a6000f3fe6080604052600436106103bc5760003560e01c80637ca8448a116101f2578063c02466681161010d578063e2f45605116100a0578063f8b45b051161006f578063f8b45b0514610e1b578063f9f92be414610e46578063fde83a3414610e6f578063fe575a8714610e9a576103c3565b8063e2f4560514610d71578063f11a24d314610d9c578063f2fde38b14610dc7578063f637434214610df0576103c3565b8063d257b34f116100dc578063d257b34f14610ca1578063d729715f14610cde578063d85ba06314610d09578063dd62ed3e14610d34576103c3565b8063c024666814610bfb578063c17b5b8c14610c24578063c18bc19514610c4d578063c8c8ebe414610c76576103c3565b80639c2e4ac611610185578063adee28ff11610154578063adee28ff14610b41578063b62496f514610b6a578063bbc0c74214610ba7578063bc205ad314610bd2576103c3565b80639c2e4ac614610a73578063a457c2d714610a9e578063a9059cbb14610adb578063aa0e438814610b18576103c3565b80638da5cb5b116101c15780638da5cb5b146109cb578063924de9b7146109f657806395d89b4114610a1f5780639a7a23d614610a4a576103c3565b80637ca8448a146109395780637cb332bb146109625780638095d5641461098b5780638a8c523c146109b4576103c3565b80633dc599ff116102e25780636a486a8e11610275578063751039fc11610244578063751039fc146108915780637571336a146108bc57806375e3661e146108e5578063782c4e991461090e576103c3565b80636a486a8e146107e75780636ddd17131461081257806370a082311461083d578063715018a61461087a576103c3565b80634e29e523116102b15780634e29e5231461072b5780634fbee1931461076857806359927044146107a55780635f189361146107d0576103c3565b80633dc599ff146106935780633e6ba8c6146106be57806349bd5a5e146106d55780634a62bb6514610700576103c3565b806319eab0421161035a57806324b9f3c11161032957806324b9f3c1146105d557806327c8f83514610600578063313ce5671461062b5780633950935114610656576103c3565b806319eab042146105195780631a8145bb14610544578063203e727e1461056f57806323b872dd14610598576103c3565b806310d5de531161039657806310d5de531461045b578063156c2f35146104985780631694505e146104c357806318160ddd146104ee576103c3565b806306fdde03146103c8578063095ea7b3146103f35780630e922ca714610430576103c3565b366103c357005b600080fd5b3480156103d457600080fd5b506103dd610ed7565b6040516103ea9190614707565b60405180910390f35b3480156103ff57600080fd5b5061041a600480360381019061041591906147c2565b610f69565b604051610427919061481d565b60405180910390f35b34801561043c57600080fd5b50610445610f87565b604051610452919061481d565b60405180910390f35b34801561046757600080fd5b50610482600480360381019061047d9190614838565b610f9a565b60405161048f919061481d565b60405180910390f35b3480156104a457600080fd5b506104ad610fba565b6040516104ba9190614874565b60405180910390f35b3480156104cf57600080fd5b506104d8610fc0565b6040516104e591906148ee565b60405180910390f35b3480156104fa57600080fd5b50610503610fe4565b6040516105109190614874565b60405180910390f35b34801561052557600080fd5b5061052e610fee565b60405161053b9190614874565b60405180910390f35b34801561055057600080fd5b50610559610ff4565b6040516105669190614874565b60405180910390f35b34801561057b57600080fd5b5061059660048036038101906105919190614909565b610ffa565b005b3480156105a457600080fd5b506105bf60048036038101906105ba9190614936565b611109565b6040516105cc919061481d565b60405180910390f35b3480156105e157600080fd5b506105ea611201565b6040516105f79190614874565b60405180910390f35b34801561060c57600080fd5b50610615611207565b6040516106229190614998565b60405180910390f35b34801561063757600080fd5b5061064061120d565b60405161064d91906149cf565b60405180910390f35b34801561066257600080fd5b5061067d600480360381019061067891906147c2565b611216565b60405161068a919061481d565b60405180910390f35b34801561069f57600080fd5b506106a86112c2565b6040516106b5919061481d565b60405180910390f35b3480156106ca57600080fd5b506106d36112d5565b005b3480156106e157600080fd5b506106ea611498565b6040516106f79190614998565b60405180910390f35b34801561070c57600080fd5b506107156114bc565b604051610722919061481d565b60405180910390f35b34801561073757600080fd5b50610752600480360381019061074d9190614838565b6114cf565b60405161075f919061481d565b60405180910390f35b34801561077457600080fd5b5061078f600480360381019061078a9190614838565b6114ef565b60405161079c919061481d565b60405180910390f35b3480156107b157600080fd5b506107ba611545565b6040516107c79190614998565b60405180910390f35b3480156107dc57600080fd5b506107e561156b565b005b3480156107f357600080fd5b506107fc611604565b6040516108099190614874565b60405180910390f35b34801561081e57600080fd5b5061082761160a565b604051610834919061481d565b60405180910390f35b34801561084957600080fd5b50610864600480360381019061085f9190614838565b61161d565b6040516108719190614874565b60405180910390f35b34801561088657600080fd5b5061088f611665565b005b34801561089d57600080fd5b506108a66116ed565b6040516108b3919061481d565b60405180910390f35b3480156108c857600080fd5b506108e360048036038101906108de9190614a16565b61178d565b005b3480156108f157600080fd5b5061090c60048036038101906109079190614838565b611864565b005b34801561091a57600080fd5b5061092361193b565b6040516109309190614998565b60405180910390f35b34801561094557600080fd5b50610960600480360381019061095b9190614838565b611961565b005b34801561096e57600080fd5b5061098960048036038101906109849190614838565b611a57565b005b34801561099757600080fd5b506109b260048036038101906109ad9190614a56565b611b93565b005b3480156109c057600080fd5b506109c9611c92565b005b3480156109d757600080fd5b506109e0611d61565b6040516109ed9190614998565b60405180910390f35b348015610a0257600080fd5b50610a1d6004803603810190610a189190614aa9565b611d8b565b005b348015610a2b57600080fd5b50610a34611e24565b604051610a419190614707565b60405180910390f35b348015610a5657600080fd5b50610a716004803603810190610a6c9190614a16565b611eb6565b005b348015610a7f57600080fd5b50610a88611fce565b604051610a959190614874565b60405180910390f35b348015610aaa57600080fd5b50610ac56004803603810190610ac091906147c2565b611fd4565b604051610ad2919061481d565b60405180910390f35b348015610ae757600080fd5b50610b026004803603810190610afd91906147c2565b6120bf565b604051610b0f919061481d565b60405180910390f35b348015610b2457600080fd5b50610b3f6004803603810190610b3a9190614a16565b6120dd565b005b348015610b4d57600080fd5b50610b686004803603810190610b639190614838565b6121c8565b005b348015610b7657600080fd5b50610b916004803603810190610b8c9190614838565b612304565b604051610b9e919061481d565b60405180910390f35b348015610bb357600080fd5b50610bbc612324565b604051610bc9919061481d565b60405180910390f35b348015610bde57600080fd5b50610bf96004803603810190610bf49190614ad6565b612337565b005b348015610c0757600080fd5b50610c226004803603810190610c1d9190614a16565b612524565b005b348015610c3057600080fd5b50610c4b6004803603810190610c469190614a56565b612649565b005b348015610c5957600080fd5b50610c746004803603810190610c6f9190614909565b612748565b005b348015610c8257600080fd5b50610c8b612857565b604051610c989190614874565b60405180910390f35b348015610cad57600080fd5b50610cc86004803603810190610cc39190614909565b61285d565b604051610cd5919061481d565b60405180910390f35b348015610cea57600080fd5b50610cf36129b2565b604051610d009190614874565b60405180910390f35b348015610d1557600080fd5b50610d1e6129b8565b604051610d2b9190614874565b60405180910390f35b348015610d4057600080fd5b50610d5b6004803603810190610d569190614ad6565b6129be565b604051610d689190614874565b60405180910390f35b348015610d7d57600080fd5b50610d86612a45565b604051610d939190614874565b60405180910390f35b348015610da857600080fd5b50610db1612a4b565b604051610dbe9190614874565b60405180910390f35b348015610dd357600080fd5b50610dee6004803603810190610de99190614838565b612a51565b005b348015610dfc57600080fd5b50610e05612b48565b604051610e129190614874565b60405180910390f35b348015610e2757600080fd5b50610e30612b4e565b604051610e3d9190614874565b60405180910390f35b348015610e5257600080fd5b50610e6d6004803603810190610e689190614838565b612b54565b005b348015610e7b57600080fd5b50610e84612d56565b604051610e919190614874565b60405180910390f35b348015610ea657600080fd5b50610ec16004803603810190610ebc9190614838565b612d5c565b604051610ece919061481d565b60405180910390f35b606060038054610ee690614b45565b80601f0160208091040260200160405190810160405280929190818152602001828054610f1290614b45565b8015610f5f5780601f10610f3457610100808354040283529160200191610f5f565b820191906000526020600020905b815481529060010190602001808311610f4257829003601f168201915b5050505050905090565b6000610f7d610f76612db2565b8484612dba565b6001905092915050565b601b60009054906101000a900460ff1681565b60196020528060005260406000206000915054906101000a900460ff1681565b600e5481565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600254905090565b60125481565b60165481565b611002612db2565b73ffffffffffffffffffffffffffffffffffffffff16611020611d61565b73ffffffffffffffffffffffffffffffffffffffff1614611076576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161106d90614bc2565b60405180910390fd5b670de0b6b3a76400006103e8600561108c610fe4565b6110969190614c11565b6110a09190614c82565b6110aa9190614c82565b8110156110ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e390614d25565b60405180910390fd5b670de0b6b3a7640000816111009190614c11565b60088190555050565b6000611116848484612f83565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000611161612db2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156111e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111d890614db7565b60405180910390fd5b6111f5856111ed612db2565b858403612dba565b60019150509392505050565b60155481565b61dead81565b60006012905090565b60006112b8611223612db2565b848460016000611231612db2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546112b39190614dd7565b612dba565b6001905092915050565b600b60039054906101000a900460ff1681565b6112dd612db2565b73ffffffffffffffffffffffffffffffffffffffff166112fb611d61565b73ffffffffffffffffffffffffffffffffffffffff1614611351576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134890614bc2565b60405180910390fd5b60003073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161138c9190614998565b602060405180830381865afa1580156113a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113cd9190614e20565b90503073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b815260040161140a929190614e4d565b6020604051808303816000875af1158015611429573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061144d9190614e8b565b503373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015611494573d6000803e3d6000fd5b5050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600b60009054906101000a900460ff1681565b601c6020528060005260406000206000915054906101000a900460ff1681565b6000601860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611573612db2565b73ffffffffffffffffffffffffffffffffffffffff16611591611d61565b73ffffffffffffffffffffffffffffffffffffffff16146115e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115de90614bc2565b60405180910390fd5b6001600b60036101000a81548160ff021916908315150217905550565b60115481565b600b60029054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61166d612db2565b73ffffffffffffffffffffffffffffffffffffffff1661168b611d61565b73ffffffffffffffffffffffffffffffffffffffff16146116e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d890614bc2565b60405180910390fd5b6116eb6000613c0e565b565b60006116f7612db2565b73ffffffffffffffffffffffffffffffffffffffff16611715611d61565b73ffffffffffffffffffffffffffffffffffffffff161461176b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161176290614bc2565b60405180910390fd5b6000600b60006101000a81548160ff0219169083151502179055506001905090565b611795612db2565b73ffffffffffffffffffffffffffffffffffffffff166117b3611d61565b73ffffffffffffffffffffffffffffffffffffffff1614611809576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161180090614bc2565b60405180910390fd5b80601960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b61186c612db2565b73ffffffffffffffffffffffffffffffffffffffff1661188a611d61565b73ffffffffffffffffffffffffffffffffffffffff16146118e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118d790614bc2565b60405180910390fd5b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611969612db2565b73ffffffffffffffffffffffffffffffffffffffff16611987611d61565b73ffffffffffffffffffffffffffffffffffffffff16146119dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119d490614bc2565b60405180910390fd5b60008173ffffffffffffffffffffffffffffffffffffffff1647604051611a0390614ee9565b60006040518083038185875af1925050503d8060008114611a40576040519150601f19603f3d011682016040523d82523d6000602084013e611a45565b606091505b5050905080611a5357600080fd5b5050565b611a5f612db2565b73ffffffffffffffffffffffffffffffffffffffff16611a7d611d61565b73ffffffffffffffffffffffffffffffffffffffff1614611ad3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aca90614bc2565b60405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8aa0f85050aca99be43beb823e0457e77966b3baf697a289b03681978f96166860405160405180910390a380600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b611b9b612db2565b73ffffffffffffffffffffffffffffffffffffffff16611bb9611d61565b73ffffffffffffffffffffffffffffffffffffffff1614611c0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0690614bc2565b60405180910390fd5b82600e8190555081600f8190555080601081905550601054600f54600e54611c379190614dd7565b611c419190614dd7565b600d819055506005600d541115611c8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c8490614f4a565b60405180910390fd5b505050565b611c9a612db2565b73ffffffffffffffffffffffffffffffffffffffff16611cb8611d61565b73ffffffffffffffffffffffffffffffffffffffff1614611d0e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d0590614bc2565b60405180910390fd5b6001600b60016101000a81548160ff0219169083151502179055506001600b60026101000a81548160ff0219169083151502179055506000601b60006101000a81548160ff021916908315150217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b611d93612db2565b73ffffffffffffffffffffffffffffffffffffffff16611db1611d61565b73ffffffffffffffffffffffffffffffffffffffff1614611e07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dfe90614bc2565b60405180910390fd5b80600b60026101000a81548160ff02191690831515021790555050565b606060048054611e3390614b45565b80601f0160208091040260200160405190810160405280929190818152602001828054611e5f90614b45565b8015611eac5780601f10611e8157610100808354040283529160200191611eac565b820191906000526020600020905b815481529060010190602001808311611e8f57829003601f168201915b5050505050905090565b611ebe612db2565b73ffffffffffffffffffffffffffffffffffffffff16611edc611d61565b73ffffffffffffffffffffffffffffffffffffffff1614611f32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f2990614bc2565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611fc0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fb790614fdc565b60405180910390fd5b611fca8282613cd4565b5050565b60105481565b60008060016000611fe3612db2565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156120a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120979061506e565b60405180910390fd5b6120b46120ab612db2565b85858403612dba565b600191505092915050565b60006120d36120cc612db2565b8484612f83565b6001905092915050565b6120e5612db2565b73ffffffffffffffffffffffffffffffffffffffff16612103611d61565b73ffffffffffffffffffffffffffffffffffffffff1614612159576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161215090614bc2565b60405180910390fd5b80601c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506121ba8282612524565b6121c4828261178d565b5050565b6121d0612db2565b73ffffffffffffffffffffffffffffffffffffffff166121ee611d61565b73ffffffffffffffffffffffffffffffffffffffff1614612244576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161223b90614bc2565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fc9f2d63eee8632b33d7a7db5252eb29036e81ee4fbe29260febe0c49ffb8a7bb60405160405180910390a380600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b601a6020528060005260406000206000915054906101000a900460ff1681565b600b60019054906101000a900460ff1681565b61233f612db2565b73ffffffffffffffffffffffffffffffffffffffff1661235d611d61565b73ffffffffffffffffffffffffffffffffffffffff16146123b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123aa90614bc2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612422576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612419906150da565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b815260040161245d9190614998565b602060405180830381865afa15801561247a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061249e9190614e20565b90508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b81526004016124db929190614e4d565b6020604051808303816000875af11580156124fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061251e9190614e8b565b50505050565b61252c612db2565b73ffffffffffffffffffffffffffffffffffffffff1661254a611d61565b73ffffffffffffffffffffffffffffffffffffffff16146125a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161259790614bc2565b60405180910390fd5b80601860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405161263d919061481d565b60405180910390a25050565b612651612db2565b73ffffffffffffffffffffffffffffffffffffffff1661266f611d61565b73ffffffffffffffffffffffffffffffffffffffff16146126c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126bc90614bc2565b60405180910390fd5b8260128190555081601381905550806014819055506014546013546012546126ed9190614dd7565b6126f79190614dd7565b60118190555060056011541115612743576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161273a90615146565b60405180910390fd5b505050565b612750612db2565b73ffffffffffffffffffffffffffffffffffffffff1661276e611d61565b73ffffffffffffffffffffffffffffffffffffffff16146127c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127bb90614bc2565b60405180910390fd5b670de0b6b3a76400006103e8600a6127da610fe4565b6127e49190614c11565b6127ee9190614c82565b6127f89190614c82565b81101561283a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612831906151d8565b60405180910390fd5b670de0b6b3a76400008161284e9190614c11565b600a8190555050565b60085481565b6000612867612db2565b73ffffffffffffffffffffffffffffffffffffffff16612885611d61565b73ffffffffffffffffffffffffffffffffffffffff16146128db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128d290614bc2565b60405180910390fd5b620186a060016128e9610fe4565b6128f39190614c11565b6128fd9190614c82565b82101561293f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129369061526a565b60405180910390fd5b6103e8600561294c610fe4565b6129569190614c11565b6129609190614c82565b8211156129a2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612999906152fc565b60405180910390fd5b8160098190555060019050919050565b60145481565b600d5481565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60095481565b600f5481565b612a59612db2565b73ffffffffffffffffffffffffffffffffffffffff16612a77611d61565b73ffffffffffffffffffffffffffffffffffffffff1614612acd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ac490614bc2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612b3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b339061538e565b60405180910390fd5b612b4581613c0e565b50565b60135481565b600a5481565b612b5c612db2565b73ffffffffffffffffffffffffffffffffffffffff16612b7a611d61565b73ffffffffffffffffffffffffffffffffffffffff1614612bd0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bc790614bc2565b60405180910390fd5b600b60039054906101000a900460ff1615612c20576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c1790615420565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015612cbc5750734cf76043b3f97ba06917cbd90f9e3a2aac1b306e73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b612cfb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cf2906154b2565b60405180910390fd5b6001600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60175481565b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612e29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e2090615544565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612e98576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e8f906155d6565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612f769190614874565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612ff2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fe990615668565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613061576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613058906156fa565b60405180910390fd5b600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156130ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130e590615766565b60405180910390fd5b600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561317b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613172906157d2565b60405180910390fd5b601b60009054906101000a900460ff161561321d57601c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661321c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161321390615864565b60405180910390fd5b5b600081036132365761323183836000613d75565b613c09565b600b60009054906101000a900460ff161561373157613253611d61565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156132c15750613291611d61565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156132fa5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015613334575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561334d5750600560149054906101000a900460ff16155b1561373057600b60019054906101000a900460ff1661344757601860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806134075750601860008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b613446576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161343d906158d0565b60405180910390fd5b5b601a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156134ea5750601960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561359157600854811115613534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161352b90615962565b60405180910390fd5b600a546135408361161d565b8261354b9190614dd7565b111561358c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613583906159ce565b60405180910390fd5b61372f565b601a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156136345750601960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156136835760085481111561367e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161367590615a60565b60405180910390fd5b61372e565b601960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661372d57600a546136e08361161d565b826136eb9190614dd7565b111561372c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613723906159ce565b60405180910390fd5b5b5b5b5b5b600061373c3061161d565b9050600060095482101590508080156137615750600b60029054906101000a900460ff165b801561377a5750600560149054906101000a900460ff16155b80156137d05750601a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156138265750601860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561387c5750601860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156138c0576001600560146101000a81548160ff0219169083151502179055506138a4613ff4565b6000600560146101000a81548160ff0219169083151502179055505b6000600560149054906101000a900460ff16159050601860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806139765750601860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561398057600090505b60008115613bf957601a60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156139e357506000601154115b15613ab057613a106064613a026011548861430d90919063ffffffff16565b61432390919063ffffffff16565b905060115460135482613a239190614c11565b613a2d9190614c82565b60166000828254613a3e9190614dd7565b9250508190555060115460145482613a569190614c11565b613a609190614c82565b60176000828254613a719190614dd7565b9250508190555060115460125482613a899190614c11565b613a939190614c82565b60156000828254613aa49190614dd7565b92505081905550613bd5565b601a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015613b0b57506000600d54115b15613bd457613b386064613b2a600d548861430d90919063ffffffff16565b61432390919063ffffffff16565b9050600d54600f5482613b4b9190614c11565b613b559190614c82565b60166000828254613b669190614dd7565b92505081905550600d5460105482613b7e9190614c11565b613b889190614c82565b60176000828254613b999190614dd7565b92505081905550600d54600e5482613bb19190614c11565b613bbb9190614c82565b60156000828254613bcc9190614dd7565b925050819055505b5b6000811115613bea57613be9873083613d75565b5b8085613bf69190615a80565b94505b613c04878787613d75565b505050505b505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b80601a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603613de4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613ddb90615668565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603613e53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613e4a906156fa565b60405180910390fd5b613e5e838383614339565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015613ee4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613edb90615b26565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254613f779190614dd7565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051613fdb9190614874565b60405180910390a3613fee84848461433e565b50505050565b6000613fff3061161d565b905060006017546015546016546140169190614dd7565b6140209190614dd7565b90506000808314806140325750600082145b1561403f5750505061430b565b601460095461404e9190614c11565b8311156140675760146009546140649190614c11565b92505b60006002836016548661407a9190614c11565b6140849190614c82565b61408e9190614c82565b905060006140a5828661434390919063ffffffff16565b905060004790506140b582614359565b60006140ca824761434390919063ffffffff16565b9050600061410e60026016546140e09190614c82565b886140eb9190615a80565b6141006015548561430d90919063ffffffff16565b61432390919063ffffffff16565b9050600061415260026016546141249190614c82565b8961412f9190615a80565b6141446017548661430d90919063ffffffff16565b61432390919063ffffffff16565b905060008183856141639190615a80565b61416d9190615a80565b9050600060168190555060006015819055506000601781905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16826040516141cd90614ee9565b60006040518083038185875af1925050503d806000811461420a576040519150601f19603f3d011682016040523d82523d6000602084013e61420f565b606091505b5050809850506000871180156142255750600081115b15614272576142348782614596565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb561868260165460405161426993929190615b46565b60405180910390a15b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16476040516142b890614ee9565b60006040518083038185875af1925050503d80600081146142f5576040519150601f19603f3d011682016040523d82523d6000602084013e6142fa565b606091505b505080985050505050505050505050505b565b6000818361431b9190614c11565b905092915050565b600081836143319190614c82565b905092915050565b505050565b505050565b600081836143519190615a80565b905092915050565b6000600267ffffffffffffffff81111561437657614375615b7d565b5b6040519080825280602002602001820160405280156143a45781602001602082028036833780820191505090505b50905030816000815181106143bc576143bb615bac565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015614461573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906144859190615bf0565b8160018151811061449957614498615bac565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506144fe307f000000000000000000000000000000000000000000000000000000000000000084612dba565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401614560959493929190615d16565b600060405180830381600087803b15801561457a57600080fd5b505af115801561458e573d6000803e3d6000fd5b505050505050565b6145c1307f000000000000000000000000000000000000000000000000000000000000000084612dba565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f305d71982308560008061460b611d61565b426040518863ffffffff1660e01b815260040161462d96959493929190615d70565b60606040518083038185885af115801561464b573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906146709190615dd1565b5050505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156146b1578082015181840152602081019050614696565b60008484015250505050565b6000601f19601f8301169050919050565b60006146d982614677565b6146e38185614682565b93506146f3818560208601614693565b6146fc816146bd565b840191505092915050565b6000602082019050818103600083015261472181846146ce565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006147598261472e565b9050919050565b6147698161474e565b811461477457600080fd5b50565b60008135905061478681614760565b92915050565b6000819050919050565b61479f8161478c565b81146147aa57600080fd5b50565b6000813590506147bc81614796565b92915050565b600080604083850312156147d9576147d8614729565b5b60006147e785828601614777565b92505060206147f8858286016147ad565b9150509250929050565b60008115159050919050565b61481781614802565b82525050565b6000602082019050614832600083018461480e565b92915050565b60006020828403121561484e5761484d614729565b5b600061485c84828501614777565b91505092915050565b61486e8161478c565b82525050565b60006020820190506148896000830184614865565b92915050565b6000819050919050565b60006148b46148af6148aa8461472e565b61488f565b61472e565b9050919050565b60006148c682614899565b9050919050565b60006148d8826148bb565b9050919050565b6148e8816148cd565b82525050565b600060208201905061490360008301846148df565b92915050565b60006020828403121561491f5761491e614729565b5b600061492d848285016147ad565b91505092915050565b60008060006060848603121561494f5761494e614729565b5b600061495d86828701614777565b935050602061496e86828701614777565b925050604061497f868287016147ad565b9150509250925092565b6149928161474e565b82525050565b60006020820190506149ad6000830184614989565b92915050565b600060ff82169050919050565b6149c9816149b3565b82525050565b60006020820190506149e460008301846149c0565b92915050565b6149f381614802565b81146149fe57600080fd5b50565b600081359050614a10816149ea565b92915050565b60008060408385031215614a2d57614a2c614729565b5b6000614a3b85828601614777565b9250506020614a4c85828601614a01565b9150509250929050565b600080600060608486031215614a6f57614a6e614729565b5b6000614a7d868287016147ad565b9350506020614a8e868287016147ad565b9250506040614a9f868287016147ad565b9150509250925092565b600060208284031215614abf57614abe614729565b5b6000614acd84828501614a01565b91505092915050565b60008060408385031215614aed57614aec614729565b5b6000614afb85828601614777565b9250506020614b0c85828601614777565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680614b5d57607f821691505b602082108103614b7057614b6f614b16565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000614bac602083614682565b9150614bb782614b76565b602082019050919050565b60006020820190508181036000830152614bdb81614b9f565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614c1c8261478c565b9150614c278361478c565b9250828202614c358161478c565b91508282048414831517614c4c57614c4b614be2565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614c8d8261478c565b9150614c988361478c565b925082614ca857614ca7614c53565b5b828204905092915050565b7f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060008201527f6c6f776572207468616e20302e35250000000000000000000000000000000000602082015250565b6000614d0f602f83614682565b9150614d1a82614cb3565b604082019050919050565b60006020820190508181036000830152614d3e81614d02565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000614da1602883614682565b9150614dac82614d45565b604082019050919050565b60006020820190508181036000830152614dd081614d94565b9050919050565b6000614de28261478c565b9150614ded8361478c565b9250828201905080821115614e0557614e04614be2565b5b92915050565b600081519050614e1a81614796565b92915050565b600060208284031215614e3657614e35614729565b5b6000614e4484828501614e0b565b91505092915050565b6000604082019050614e626000830185614989565b614e6f6020830184614865565b9392505050565b600081519050614e85816149ea565b92915050565b600060208284031215614ea157614ea0614729565b5b6000614eaf84828501614e76565b91505092915050565b600081905092915050565b50565b6000614ed3600083614eb8565b9150614ede82614ec3565b600082019050919050565b6000614ef482614ec6565b9150819050919050565b7f4275792066656573206d757374206265203c3d20352e00000000000000000000600082015250565b6000614f34601683614682565b9150614f3f82614efe565b602082019050919050565b60006020820190508181036000830152614f6381614f27565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060008201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b6000614fc6603983614682565b9150614fd182614f6a565b604082019050919050565b60006020820190508181036000830152614ff581614fb9565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000615058602583614682565b915061506382614ffc565b604082019050919050565b600060208201905081810360008301526150878161504b565b9050919050565b7f5f746f6b656e20616464726573732063616e6e6f742062652030000000000000600082015250565b60006150c4601a83614682565b91506150cf8261508e565b602082019050919050565b600060208201905081810360008301526150f3816150b7565b9050919050565b7f53656c6c2066656573206d757374206265203c3d20352e000000000000000000600082015250565b6000615130601783614682565b915061513b826150fa565b602082019050919050565b6000602082019050818103600083015261515f81615123565b9050919050565b7f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e2060008201527f312e302500000000000000000000000000000000000000000000000000000000602082015250565b60006151c2602483614682565b91506151cd82615166565b604082019050919050565b600060208201905081810360008301526151f1816151b5565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60008201527f20302e3030312520746f74616c20737570706c792e0000000000000000000000602082015250565b6000615254603583614682565b915061525f826151f8565b604082019050919050565b6000602082019050818103600083015261528381615247565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206869676865722074686160008201527f6e20302e352520746f74616c20737570706c792e000000000000000000000000602082015250565b60006152e6603483614682565b91506152f18261528a565b604082019050919050565b60006020820190508181036000830152615315816152d9565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000615378602683614682565b91506153838261531c565b604082019050919050565b600060208201905081810360008301526153a78161536b565b9050919050565b7f5465616d20686173207265766f6b656420626c61636b6c69737420726967687460008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600061540a602183614682565b9150615415826153ae565b604082019050919050565b60006020820190508181036000830152615439816153fd565b9050919050565b7f43616e6e6f7420626c61636b6c69737420746f6b656e277320763220726f757460008201527f6572206f7220763220706f6f6c2e000000000000000000000000000000000000602082015250565b600061549c602e83614682565b91506154a782615440565b604082019050919050565b600060208201905081810360008301526154cb8161548f565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061552e602483614682565b9150615539826154d2565b604082019050919050565b6000602082019050818103600083015261555d81615521565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006155c0602283614682565b91506155cb82615564565b604082019050919050565b600060208201905081810360008301526155ef816155b3565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000615652602583614682565b915061565d826155f6565b604082019050919050565b6000602082019050818103600083015261568181615645565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006156e4602383614682565b91506156ef82615688565b604082019050919050565b60006020820190508181036000830152615713816156d7565b9050919050565b7f53656e64657220626c61636b6c69737465640000000000000000000000000000600082015250565b6000615750601283614682565b915061575b8261571a565b602082019050919050565b6000602082019050818103600083015261577f81615743565b9050919050565b7f526563656976657220626c61636b6c6973746564000000000000000000000000600082015250565b60006157bc601483614682565b91506157c782615786565b602082019050919050565b600060208201905081810360008301526157eb816157af565b9050919050565b7f4e6f7420617574686f72697a656420746f207472616e73666572207072652d6d60008201527f6967726174696f6e2e0000000000000000000000000000000000000000000000602082015250565b600061584e602983614682565b9150615859826157f2565b604082019050919050565b6000602082019050818103600083015261587d81615841565b9050919050565b7f54726164696e67206973206e6f74206163746976652e00000000000000000000600082015250565b60006158ba601683614682565b91506158c582615884565b602082019050919050565b600060208201905081810360008301526158e9816158ad565b9050919050565b7f427579207472616e7366657220616d6f756e742065786365656473207468652060008201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000602082015250565b600061594c603583614682565b9150615957826158f0565b604082019050919050565b6000602082019050818103600083015261597b8161593f565b9050919050565b7f4d61782077616c6c657420657863656564656400000000000000000000000000600082015250565b60006159b8601383614682565b91506159c382615982565b602082019050919050565b600060208201905081810360008301526159e7816159ab565b9050919050565b7f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560008201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000602082015250565b6000615a4a603683614682565b9150615a55826159ee565b604082019050919050565b60006020820190508181036000830152615a7981615a3d565b9050919050565b6000615a8b8261478c565b9150615a968361478c565b9250828203905081811115615aae57615aad614be2565b5b92915050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000615b10602683614682565b9150615b1b82615ab4565b604082019050919050565b60006020820190508181036000830152615b3f81615b03565b9050919050565b6000606082019050615b5b6000830186614865565b615b686020830185614865565b615b756040830184614865565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050615bea81614760565b92915050565b600060208284031215615c0657615c05614729565b5b6000615c1484828501615bdb565b91505092915050565b6000819050919050565b6000615c42615c3d615c3884615c1d565b61488f565b61478c565b9050919050565b615c5281615c27565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b615c8d8161474e565b82525050565b6000615c9f8383615c84565b60208301905092915050565b6000602082019050919050565b6000615cc382615c58565b615ccd8185615c63565b9350615cd883615c74565b8060005b83811015615d09578151615cf08882615c93565b9750615cfb83615cab565b925050600181019050615cdc565b5085935050505092915050565b600060a082019050615d2b6000830188614865565b615d386020830187615c49565b8181036040830152615d4a8186615cb8565b9050615d596060830185614989565b615d666080830184614865565b9695505050505050565b600060c082019050615d856000830189614989565b615d926020830188614865565b615d9f6040830187615c49565b615dac6060830186615c49565b615db96080830185614989565b615dc660a0830184614865565b979650505050505050565b600080600060608486031215615dea57615de9614729565b5b6000615df886828701614e0b565b9350506020615e0986828701614e0b565b9250506040615e1a86828701614e0b565b915050925092509256fea26469706673582212202ea27e35ae0828f113412c6ef8a27b75ec3bc430e00d3041ac2b4f3b99dbf3b864736f6c63430008110033