60c06040526019600b556001600c60006101000a81548160ff021916908315150217905550610e10600d55610708600f556001601160006101000a81548160ff0219169083151502179055506000601160016101000a81548160ff0219169083151502179055506000601160026101000a81548160ff0219169083151502179055506001601360006101000a81548160ff021916908315150217905550348015620000a957600080fd5b506040518060400160405280600a81526020017f53686962612050657065000000000000000000000000000000000000000000008152506040518060400160405280600781526020017f534849504550450000000000000000000000000000000000000000000000000081525081600390805190602001906200012e92919062000b09565b5080600490805190602001906200014792919062000b09565b5050506200016a6200015e620005c960201b60201c565b620005d160201b60201c565b6000737a250d5630b4cf539739df2c5dacb4c659f2488d9050620001968160016200069760201b60201c565b8073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000216573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200023c919062000c23565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002a4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ca919062000c23565b6040518363ffffffff1660e01b8152600401620002e992919062000c66565b6020604051808303816000875af115801562000309573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200032f919062000c23565b73ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff16815250506200037760a05160016200069760201b60201c565b6200038c60a05160016200078160201b60201c565b600080600060199050600080600060199050600069d3c21bcecceda1000000905069043c33c193756480000060088190555069043c33c1937564800000600a81905550612710600a82620003e1919062000ccc565b620003ed919062000d5c565b6009819055508660158190555085601681905550846017819055506017546016546015546200041d919062000d94565b62000429919062000d94565b6014819055508360198190555082601a8190555081601b81905550601b54601a5460195462000459919062000d94565b62000465919062000d94565b601881905550734360df13007aeb7d753abc7345cf3d1a78ab236e600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550734360df13007aeb7d753abc7345cf3d1a78ab236e600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000537620005296200082260201b60201c565b60016200084c60201b60201c565b6200054a3060016200084c60201b60201c565b6200055f61dead60016200084c60201b60201c565b62000581620005736200082260201b60201c565b60016200069760201b60201c565b620005943060016200069760201b60201c565b620005a961dead60016200069760201b60201c565b620005bb33826200098660201b60201c565b505050505050505062000fb3565b600033905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620006a7620005c960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620006cd6200082260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000726576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200071d9062000e52565b60405180910390fd5b80602060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b80602160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6200085c620005c960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620008826200082260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1614620008db576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008d29062000e52565b60405180910390fd5b80601f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7826040516200097a919062000e91565b60405180910390a25050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415620009f9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620009f09062000efe565b60405180910390fd5b62000a0d6000838362000aff60201b60201c565b806002600082825462000a21919062000d94565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000a78919062000d94565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000adf919062000f31565b60405180910390a362000afb6000838362000b0460201b60201c565b5050565b505050565b505050565b82805462000b179062000f7d565b90600052602060002090601f01602090048101928262000b3b576000855562000b87565b82601f1062000b5657805160ff191683800117855562000b87565b8280016001018555821562000b87579182015b8281111562000b8657825182559160200191906001019062000b69565b5b50905062000b96919062000b9a565b5090565b5b8082111562000bb557600081600090555060010162000b9b565b5090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000beb8262000bbe565b9050919050565b62000bfd8162000bde565b811462000c0957600080fd5b50565b60008151905062000c1d8162000bf2565b92915050565b60006020828403121562000c3c5762000c3b62000bb9565b5b600062000c4c8482850162000c0c565b91505092915050565b62000c608162000bde565b82525050565b600060408201905062000c7d600083018562000c55565b62000c8c602083018462000c55565b9392505050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000cd98262000c93565b915062000ce68362000c93565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161562000d225762000d2162000c9d565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000d698262000c93565b915062000d768362000c93565b92508262000d895762000d8862000d2d565b5b828204905092915050565b600062000da18262000c93565b915062000dae8362000c93565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000de65762000de562000c9d565b5b828201905092915050565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600062000e3a60208362000df1565b915062000e478262000e02565b602082019050919050565b6000602082019050818103600083015262000e6d8162000e2b565b9050919050565b60008115159050919050565b62000e8b8162000e74565b82525050565b600060208201905062000ea8600083018462000e80565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062000ee6601f8362000df1565b915062000ef38262000eae565b602082019050919050565b6000602082019050818103600083015262000f198162000ed7565b9050919050565b62000f2b8162000c93565b82525050565b600060208201905062000f48600083018462000f20565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000f9657607f821691505b6020821081141562000fad5762000fac62000f4e565b5b50919050565b60805160a051615af46200103b600039600081816113ed01528181611bc7015281816126db01528181612792015281816127bf01528181612e0301528181613f0701528181613fc00152613fed015260008181610f9001528181612dab01528181614163015281816142440152818161426b01528181614307015261432e0152615af46000f3fe6080604052600436106103b15760003560e01c80638da5cb5b116101e7578063bbc0c7421161010d578063dd62ed3e116100a0578063f2fde38b1161006f578063f2fde38b14610e03578063f637434214610e2c578063f8b45b0514610e57578063fe72b27a14610e82576103b8565b8063dd62ed3e14610d45578063e2f4560514610d82578063e884f26014610dad578063f11a24d314610dd8576103b8565b8063c876d0b9116100dc578063c876d0b914610c87578063c8c8ebe414610cb2578063d257b34f14610cdd578063d85ba06314610d1a576103b8565b8063bbc0c74214610be1578063c024666814610c0c578063c17b5b8c14610c35578063c18bc19514610c5e576103b8565b80639ec22c0e11610185578063a4c82a0011610154578063a4c82a0014610b13578063a9059cbb14610b3e578063aacebbe314610b7b578063b62496f514610ba4576103b8565b80639ec22c0e14610a555780639fccce3214610a80578063a0d82dc514610aab578063a457c2d714610ad6576103b8565b8063924de9b7116101c1578063924de9b7146109ad57806395d89b41146109d65780639a7a23d614610a015780639c3b4fdc14610a2a576103b8565b80638da5cb5b1461092c5780638ea5220f146109575780639213691314610982576103b8565b8063313ce567116102d7578063715018a61161026a57806375f0a8741161023957806375f0a874146108965780637bce5a04146108c15780638095d564146108ec5780638a8c523c14610915576103b8565b8063715018a614610802578063730c188814610819578063751039fc146108425780637571336a1461086d576103b8565b80634fbee193116102a65780634fbee193146107325780636a486a8e1461076f5780636ddd17131461079a57806370a08231146107c5576103b8565b8063313ce56714610674578063395093511461069f57806349bd5a5e146106dc5780634a62bb6514610707576103b8565b8063199ffc721161034f57806323b872dd1161031e57806323b872dd146105b657806327c8f835146105f35780632c3e486c1461061e5780632e82f1a014610649576103b8565b8063199ffc721461050c5780631a8145bb146105375780631f3fed8f14610562578063203e727e1461058d576103b8565b80631694505e1161038b5780631694505e1461046257806318160ddd1461048d5780631816467f146104b8578063184c16c5146104e1576103b8565b806306fdde03146103bd578063095ea7b3146103e857806310d5de5314610425576103b8565b366103b857005b600080fd5b3480156103c957600080fd5b506103d2610ebf565b6040516103df9190614476565b60405180910390f35b3480156103f457600080fd5b5061040f600480360381019061040a9190614531565b610f51565b60405161041c919061458c565b60405180910390f35b34801561043157600080fd5b5061044c600480360381019061044791906145a7565b610f6f565b604051610459919061458c565b60405180910390f35b34801561046e57600080fd5b50610477610f8e565b6040516104849190614633565b60405180910390f35b34801561049957600080fd5b506104a2610fb2565b6040516104af919061465d565b60405180910390f35b3480156104c457600080fd5b506104df60048036038101906104da91906145a7565b610fbc565b005b3480156104ed57600080fd5b506104f66110f8565b604051610503919061465d565b60405180910390f35b34801561051857600080fd5b506105216110fe565b60405161052e919061465d565b60405180910390f35b34801561054357600080fd5b5061054c611104565b604051610559919061465d565b60405180910390f35b34801561056e57600080fd5b5061057761110a565b604051610584919061465d565b60405180910390f35b34801561059957600080fd5b506105b460048036038101906105af9190614678565b611110565b005b3480156105c257600080fd5b506105dd60048036038101906105d891906146a5565b61121f565b6040516105ea919061458c565b60405180910390f35b3480156105ff57600080fd5b50610608611317565b6040516106159190614707565b60405180910390f35b34801561062a57600080fd5b5061063361131d565b604051610640919061465d565b60405180910390f35b34801561065557600080fd5b5061065e611323565b60405161066b919061458c565b60405180910390f35b34801561068057600080fd5b50610689611336565b604051610696919061473e565b60405180910390f35b3480156106ab57600080fd5b506106c660048036038101906106c19190614531565b61133f565b6040516106d3919061458c565b60405180910390f35b3480156106e857600080fd5b506106f16113eb565b6040516106fe9190614707565b60405180910390f35b34801561071357600080fd5b5061071c61140f565b604051610729919061458c565b60405180910390f35b34801561073e57600080fd5b50610759600480360381019061075491906145a7565b611422565b604051610766919061458c565b60405180910390f35b34801561077b57600080fd5b50610784611478565b604051610791919061465d565b60405180910390f35b3480156107a657600080fd5b506107af61147e565b6040516107bc919061458c565b60405180910390f35b3480156107d157600080fd5b506107ec60048036038101906107e791906145a7565b611491565b6040516107f9919061465d565b60405180910390f35b34801561080e57600080fd5b506108176114d9565b005b34801561082557600080fd5b50610840600480360381019061083b9190614785565b611561565b005b34801561084e57600080fd5b506108576116a1565b604051610864919061458c565b60405180910390f35b34801561087957600080fd5b50610894600480360381019061088f91906147d8565b611741565b005b3480156108a257600080fd5b506108ab611818565b6040516108b89190614707565b60405180910390f35b3480156108cd57600080fd5b506108d661183e565b6040516108e3919061465d565b60405180910390f35b3480156108f857600080fd5b50610913600480360381019061090e9190614818565b611844565b005b34801561092157600080fd5b5061092a61190d565b005b34801561093857600080fd5b506109416119c8565b60405161094e9190614707565b60405180910390f35b34801561096357600080fd5b5061096c6119f2565b6040516109799190614707565b60405180910390f35b34801561098e57600080fd5b50610997611a18565b6040516109a4919061465d565b60405180910390f35b3480156109b957600080fd5b506109d460048036038101906109cf919061486b565b611a1e565b005b3480156109e257600080fd5b506109eb611ab7565b6040516109f89190614476565b60405180910390f35b348015610a0d57600080fd5b50610a286004803603810190610a2391906147d8565b611b49565b005b348015610a3657600080fd5b50610a3f611c62565b604051610a4c919061465d565b60405180910390f35b348015610a6157600080fd5b50610a6a611c68565b604051610a77919061465d565b60405180910390f35b348015610a8c57600080fd5b50610a95611c6e565b604051610aa2919061465d565b60405180910390f35b348015610ab757600080fd5b50610ac0611c74565b604051610acd919061465d565b60405180910390f35b348015610ae257600080fd5b50610afd6004803603810190610af89190614531565b611c7a565b604051610b0a919061458c565b60405180910390f35b348015610b1f57600080fd5b50610b28611d65565b604051610b35919061465d565b60405180910390f35b348015610b4a57600080fd5b50610b656004803603810190610b609190614531565b611d6b565b604051610b72919061458c565b60405180910390f35b348015610b8757600080fd5b50610ba26004803603810190610b9d91906145a7565b611d89565b005b348015610bb057600080fd5b50610bcb6004803603810190610bc691906145a7565b611ec5565b604051610bd8919061458c565b60405180910390f35b348015610bed57600080fd5b50610bf6611ee5565b604051610c03919061458c565b60405180910390f35b348015610c1857600080fd5b50610c336004803603810190610c2e91906147d8565b611ef8565b005b348015610c4157600080fd5b50610c5c6004803603810190610c579190614818565b61201d565b005b348015610c6a57600080fd5b50610c856004803603810190610c809190614678565b6120e6565b005b348015610c9357600080fd5b50610c9c6121f5565b604051610ca9919061458c565b60405180910390f35b348015610cbe57600080fd5b50610cc7612208565b604051610cd4919061465d565b60405180910390f35b348015610ce957600080fd5b50610d046004803603810190610cff9190614678565b61220e565b604051610d11919061458c565b60405180910390f35b348015610d2657600080fd5b50610d2f612363565b604051610d3c919061465d565b60405180910390f35b348015610d5157600080fd5b50610d6c6004803603810190610d679190614898565b612369565b604051610d79919061465d565b60405180910390f35b348015610d8e57600080fd5b50610d976123f0565b604051610da4919061465d565b60405180910390f35b348015610db957600080fd5b50610dc26123f6565b604051610dcf919061458c565b60405180910390f35b348015610de457600080fd5b50610ded612496565b604051610dfa919061465d565b60405180910390f35b348015610e0f57600080fd5b50610e2a6004803603810190610e2591906145a7565b61249c565b005b348015610e3857600080fd5b50610e41612594565b604051610e4e919061465d565b60405180910390f35b348015610e6357600080fd5b50610e6c61259a565b604051610e79919061465d565b60405180910390f35b348015610e8e57600080fd5b50610ea96004803603810190610ea49190614678565b6125a0565b604051610eb6919061458c565b60405180910390f35b606060038054610ece90614907565b80601f0160208091040260200160405190810160405280929190818152602001828054610efa90614907565b8015610f475780601f10610f1c57610100808354040283529160200191610f47565b820191906000526020600020905b815481529060010190602001808311610f2a57829003601f168201915b5050505050905090565b6000610f65610f5e612878565b8484612880565b6001905092915050565b602080528060005260406000206000915054906101000a900460ff1681565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600254905090565b610fc4612878565b73ffffffffffffffffffffffffffffffffffffffff16610fe26119c8565b73ffffffffffffffffffffffffffffffffffffffff1614611038576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102f90614985565b60405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f90b8024c4923d3873ff5b9fcb43d0360d4b9217fa41225d07ba379993552e74360405160405180910390a380600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600f5481565b600b5481565b601d5481565b601c5481565b611118612878565b73ffffffffffffffffffffffffffffffffffffffff166111366119c8565b73ffffffffffffffffffffffffffffffffffffffff161461118c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118390614985565b60405180910390fd5b670de0b6b3a76400006103e860016111a2610fb2565b6111ac91906149d4565b6111b69190614a5d565b6111c09190614a5d565b811015611202576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f990614b00565b60405180910390fd5b670de0b6b3a76400008161121691906149d4565b60088190555050565b600061122c848484612a4b565b6000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000611277612878565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156112f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112ee90614b92565b60405180910390fd5b61130b85611303612878565b858403612880565b60019150509392505050565b61dead81565b600d5481565b600c60009054906101000a900460ff1681565b60006012905090565b60006113e161134c612878565b84846001600061135a612878565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546113dc9190614bb2565b612880565b6001905092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b601160009054906101000a900460ff1681565b6000601f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b60185481565b601160029054906101000a900460ff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6114e1612878565b73ffffffffffffffffffffffffffffffffffffffff166114ff6119c8565b73ffffffffffffffffffffffffffffffffffffffff1614611555576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154c90614985565b60405180910390fd5b61155f60006137e3565b565b611569612878565b73ffffffffffffffffffffffffffffffffffffffff166115876119c8565b73ffffffffffffffffffffffffffffffffffffffff16146115dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d490614985565b60405180910390fd5b610258831015611622576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161990614c7a565b60405180910390fd5b6103e88211158015611635575060008210155b611674576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166b90614d0c565b60405180910390fd5b82600d8190555081600b8190555080600c60006101000a81548160ff021916908315150217905550505050565b60006116ab612878565b73ffffffffffffffffffffffffffffffffffffffff166116c96119c8565b73ffffffffffffffffffffffffffffffffffffffff161461171f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171690614985565b60405180910390fd5b6000601160006101000a81548160ff0219169083151502179055506001905090565b611749612878565b73ffffffffffffffffffffffffffffffffffffffff166117676119c8565b73ffffffffffffffffffffffffffffffffffffffff16146117bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117b490614985565b60405180910390fd5b80602060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60155481565b61184c612878565b73ffffffffffffffffffffffffffffffffffffffff1661186a6119c8565b73ffffffffffffffffffffffffffffffffffffffff16146118c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b790614985565b60405180910390fd5b8260158190555081601681905550806017819055506017546016546015546118e89190614bb2565b6118f29190614bb2565b6014819055506063601454111561190857600080fd5b505050565b611915612878565b73ffffffffffffffffffffffffffffffffffffffff166119336119c8565b73ffffffffffffffffffffffffffffffffffffffff1614611989576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198090614985565b60405180910390fd5b6001601160016101000a81548160ff0219169083151502179055506001601160026101000a81548160ff02191690831515021790555042600e81905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60195481565b611a26612878565b73ffffffffffffffffffffffffffffffffffffffff16611a446119c8565b73ffffffffffffffffffffffffffffffffffffffff1614611a9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9190614985565b60405180910390fd5b80601160026101000a81548160ff02191690831515021790555050565b606060048054611ac690614907565b80601f0160208091040260200160405190810160405280929190818152602001828054611af290614907565b8015611b3f5780601f10611b1457610100808354040283529160200191611b3f565b820191906000526020600020905b815481529060010190602001808311611b2257829003601f168201915b5050505050905090565b611b51612878565b73ffffffffffffffffffffffffffffffffffffffff16611b6f6119c8565b73ffffffffffffffffffffffffffffffffffffffff1614611bc5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bbc90614985565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611c54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c4b90614d9e565b60405180910390fd5b611c5e82826138a9565b5050565b60175481565b60105481565b601e5481565b601b5481565b60008060016000611c89612878565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015611d46576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d3d90614e30565b60405180910390fd5b611d5a611d51612878565b85858403612880565b600191505092915050565b600e5481565b6000611d7f611d78612878565b8484612a4b565b6001905092915050565b611d91612878565b73ffffffffffffffffffffffffffffffffffffffff16611daf6119c8565b73ffffffffffffffffffffffffffffffffffffffff1614611e05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dfc90614985565b60405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167fa751787977eeb3902e30e1d19ca00c6ad274a1f622c31a206e32366700b0567460405160405180910390a380600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60216020528060005260406000206000915054906101000a900460ff1681565b601160019054906101000a900460ff1681565b611f00612878565b73ffffffffffffffffffffffffffffffffffffffff16611f1e6119c8565b73ffffffffffffffffffffffffffffffffffffffff1614611f74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f6b90614985565b60405180910390fd5b80601f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051612011919061458c565b60405180910390a25050565b612025612878565b73ffffffffffffffffffffffffffffffffffffffff166120436119c8565b73ffffffffffffffffffffffffffffffffffffffff1614612099576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161209090614985565b60405180910390fd5b8260198190555081601a8190555080601b81905550601b54601a546019546120c19190614bb2565b6120cb9190614bb2565b601881905550606360185411156120e157600080fd5b505050565b6120ee612878565b73ffffffffffffffffffffffffffffffffffffffff1661210c6119c8565b73ffffffffffffffffffffffffffffffffffffffff1614612162576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161215990614985565b60405180910390fd5b670de0b6b3a76400006103e86005612178610fb2565b61218291906149d4565b61218c9190614a5d565b6121969190614a5d565b8110156121d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121cf90614ec2565b60405180910390fd5b670de0b6b3a7640000816121ec91906149d4565b600a8190555050565b601360009054906101000a900460ff1681565b60085481565b6000612218612878565b73ffffffffffffffffffffffffffffffffffffffff166122366119c8565b73ffffffffffffffffffffffffffffffffffffffff161461228c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161228390614985565b60405180910390fd5b620186a0600161229a610fb2565b6122a491906149d4565b6122ae9190614a5d565b8210156122f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122e790614f54565b60405180910390fd5b6103e860056122fd610fb2565b61230791906149d4565b6123119190614a5d565b821115612353576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161234a90614fe6565b60405180910390fd5b8160098190555060019050919050565b60145481565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60095481565b6000612400612878565b73ffffffffffffffffffffffffffffffffffffffff1661241e6119c8565b73ffffffffffffffffffffffffffffffffffffffff1614612474576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161246b90614985565b60405180910390fd5b6000601360006101000a81548160ff0219169083151502179055506001905090565b60165481565b6124a4612878565b73ffffffffffffffffffffffffffffffffffffffff166124c26119c8565b73ffffffffffffffffffffffffffffffffffffffff1614612518576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161250f90614985565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612588576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161257f90615078565b60405180910390fd5b612591816137e3565b50565b601a5481565b600a5481565b60006125aa612878565b73ffffffffffffffffffffffffffffffffffffffff166125c86119c8565b73ffffffffffffffffffffffffffffffffffffffff161461261e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161261590614985565b60405180910390fd5b600f5460105461262e9190614bb2565b421161266f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612666906150e4565b60405180910390fd5b6103e88211156126b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126ab90615176565b60405180910390fd5b4260108190555060003073ffffffffffffffffffffffffffffffffffffffff166370a082317f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016127169190614707565b602060405180830381865afa158015612733573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061275791906151ab565b90506000612782612710612774868561394a90919063ffffffff16565b61396090919063ffffffff16565b905060008111156127bb576127ba7f000000000000000000000000000000000000000000000000000000000000000061dead83613976565b5b60007f000000000000000000000000000000000000000000000000000000000000000090508073ffffffffffffffffffffffffffffffffffffffff1663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561282857600080fd5b505af115801561283c573d6000803e3d6000fd5b505050507f8462566617872a3fbab94534675218431ff9e204063ee3f4f43d965626a39abb60405160405180910390a160019350505050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156128f0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128e79061524a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612960576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612957906152dc565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612a3e919061465d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612abb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ab29061536e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612b2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b2290615400565b60405180910390fd5b6000811415612b4557612b4083836000613976565b6137de565b601160009054906101000a900460ff161561320857612b626119c8565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015612bd05750612ba06119c8565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612c095750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612c43575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612c5c5750600560149054906101000a900460ff16155b1561320757601160019054906101000a900460ff16612d5657601f60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680612d165750601f60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b612d55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d4c9061546c565b60405180910390fd5b5b601360009054906101000a900460ff1615612f1e57612d736119c8565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015612dfa57507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015612e5257507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15612f1d5743601260003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410612ed8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ecf90615524565b60405180910390fd5b43601260003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b602160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015612fc15750602060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156130685760085481111561300b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613002906155b6565b60405180910390fd5b600a5461301783611491565b826130229190614bb2565b1115613063576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161305a90615622565b60405180910390fd5b613206565b602160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561310b5750602060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561315a57600854811115613155576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161314c906156b4565b60405180910390fd5b613205565b602060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661320457600a546131b783611491565b826131c29190614bb2565b1115613203576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016131fa90615622565b60405180910390fd5b5b5b5b5b5b600061321330611491565b9050600060095482101590508080156132385750601160029054906101000a900460ff165b80156132515750600560149054906101000a900460ff16155b80156132a75750602160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156132fd5750601f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156133535750601f60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15613397576001600560146101000a81548160ff02191690831515021790555061337b613bf7565b6000600560146101000a81548160ff0219169083151502179055505b600560149054906101000a900460ff161580156133fd5750602160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80156134155750600c60009054906101000a900460ff165b80156134305750600d54600e5461342c9190614bb2565b4210155b80156134865750601f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561349557613493613ede565b505b6000600560149054906101000a900460ff16159050601f60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168061354b5750601f60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561355557600090505b600081156137ce57602160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156135b857506000601854115b15613685576135e560646135d76018548861394a90919063ffffffff16565b61396090919063ffffffff16565b9050601854601a54826135f891906149d4565b6136029190614a5d565b601d60008282546136139190614bb2565b92505081905550601854601b548261362b91906149d4565b6136359190614a5d565b601e60008282546136469190614bb2565b925050819055506018546019548261365e91906149d4565b6136689190614a5d565b601c60008282546136799190614bb2565b925050819055506137aa565b602160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680156136e057506000601454115b156137a95761370d60646136ff6014548861394a90919063ffffffff16565b61396090919063ffffffff16565b90506014546016548261372091906149d4565b61372a9190614a5d565b601d600082825461373b9190614bb2565b925050819055506014546017548261375391906149d4565b61375d9190614a5d565b601e600082825461376e9190614bb2565b925050819055506014546015548261378691906149d4565b6137909190614a5d565b601c60008282546137a19190614bb2565b925050819055505b5b60008111156137bf576137be873083613976565b5b80856137cb91906156d4565b94505b6137d9878787613976565b505050505b505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b80602160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b6000818361395891906149d4565b905092915050565b6000818361396e9190614a5d565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156139e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016139dd9061536e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415613a56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a4d90615400565b60405180910390fd5b613a618383836140a4565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015613ae7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613ade9061577a565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254613b7a9190614bb2565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051613bde919061465d565b60405180910390a3613bf18484846140a9565b50505050565b6000613c0230611491565b90506000601e54601c54601d54613c199190614bb2565b613c239190614bb2565b9050600080831480613c355750600082145b15613c4257505050613edc565b6014600954613c5191906149d4565b831115613c6a576014600954613c6791906149d4565b92505b6000600283601d5486613c7d91906149d4565b613c879190614a5d565b613c919190614a5d565b90506000613ca882866140ae90919063ffffffff16565b90506000479050613cb8826140c4565b6000613ccd82476140ae90919063ffffffff16565b90506000613cf887613cea601c548561394a90919063ffffffff16565b61396090919063ffffffff16565b90506000613d2388613d15601e548661394a90919063ffffffff16565b61396090919063ffffffff16565b90506000818385613d3491906156d4565b613d3e91906156d4565b90506000601d819055506000601c819055506000601e81905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1682604051613d9e906157cb565b60006040518083038185875af1925050503d8060008114613ddb576040519150601f19603f3d011682016040523d82523d6000602084013e613de0565b606091505b505080985050600087118015613df65750600081115b15613e4357613e058782614301565b7f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5618682601d54604051613e3a939291906157e0565b60405180910390a15b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1647604051613e89906157cb565b60006040518083038185875af1925050503d8060008114613ec6576040519150601f19603f3d011682016040523d82523d6000602084013e613ecb565b606091505b505080985050505050505050505050505b565b600042600e8190555060003073ffffffffffffffffffffffffffffffffffffffff166370a082317f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b8152600401613f429190614707565b602060405180830381865afa158015613f5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613f8391906151ab565b90506000613fb0612710613fa2600b548561394a90919063ffffffff16565b61396090919063ffffffff16565b90506000811115613fe957613fe87f000000000000000000000000000000000000000000000000000000000000000061dead83613976565b5b60007f000000000000000000000000000000000000000000000000000000000000000090508073ffffffffffffffffffffffffffffffffffffffff1663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561405657600080fd5b505af115801561406a573d6000803e3d6000fd5b505050507f454c91ae84fcc766ddda0dcb289f26b3d0176efeacf4061fc219fa6ca8c3048d60405160405180910390a16001935050505090565b505050565b505050565b600081836140bc91906156d4565b905092915050565b6000600267ffffffffffffffff8111156140e1576140e0615817565b5b60405190808252806020026020018201604052801561410f5781602001602082028036833780820191505090505b509050308160008151811061412757614126615846565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156141cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141f0919061588a565b8160018151811061420457614203615846565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050614269307f000000000000000000000000000000000000000000000000000000000000000084612880565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016142cb9594939291906159b0565b600060405180830381600087803b1580156142e557600080fd5b505af11580156142f9573d6000803e3d6000fd5b505050505050565b61432c307f000000000000000000000000000000000000000000000000000000000000000084612880565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f305d71982308560008061dead426040518863ffffffff1660e01b815260040161439396959493929190615a0a565b60606040518083038185885af11580156143b1573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906143d69190615a6b565b5050505050565b600081519050919050565b600082825260208201905092915050565b60005b838110156144175780820151818401526020810190506143fc565b83811115614426576000848401525b50505050565b6000601f19601f8301169050919050565b6000614448826143dd565b61445281856143e8565b93506144628185602086016143f9565b61446b8161442c565b840191505092915050565b60006020820190508181036000830152614490818461443d565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006144c88261449d565b9050919050565b6144d8816144bd565b81146144e357600080fd5b50565b6000813590506144f5816144cf565b92915050565b6000819050919050565b61450e816144fb565b811461451957600080fd5b50565b60008135905061452b81614505565b92915050565b6000806040838503121561454857614547614498565b5b6000614556858286016144e6565b92505060206145678582860161451c565b9150509250929050565b60008115159050919050565b61458681614571565b82525050565b60006020820190506145a1600083018461457d565b92915050565b6000602082840312156145bd576145bc614498565b5b60006145cb848285016144e6565b91505092915050565b6000819050919050565b60006145f96145f46145ef8461449d565b6145d4565b61449d565b9050919050565b600061460b826145de565b9050919050565b600061461d82614600565b9050919050565b61462d81614612565b82525050565b60006020820190506146486000830184614624565b92915050565b614657816144fb565b82525050565b6000602082019050614672600083018461464e565b92915050565b60006020828403121561468e5761468d614498565b5b600061469c8482850161451c565b91505092915050565b6000806000606084860312156146be576146bd614498565b5b60006146cc868287016144e6565b93505060206146dd868287016144e6565b92505060406146ee8682870161451c565b9150509250925092565b614701816144bd565b82525050565b600060208201905061471c60008301846146f8565b92915050565b600060ff82169050919050565b61473881614722565b82525050565b6000602082019050614753600083018461472f565b92915050565b61476281614571565b811461476d57600080fd5b50565b60008135905061477f81614759565b92915050565b60008060006060848603121561479e5761479d614498565b5b60006147ac8682870161451c565b93505060206147bd8682870161451c565b92505060406147ce86828701614770565b9150509250925092565b600080604083850312156147ef576147ee614498565b5b60006147fd858286016144e6565b925050602061480e85828601614770565b9150509250929050565b60008060006060848603121561483157614830614498565b5b600061483f8682870161451c565b93505060206148508682870161451c565b92505060406148618682870161451c565b9150509250925092565b60006020828403121561488157614880614498565b5b600061488f84828501614770565b91505092915050565b600080604083850312156148af576148ae614498565b5b60006148bd858286016144e6565b92505060206148ce858286016144e6565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061491f57607f821691505b60208210811415614933576149326148d8565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b600061496f6020836143e8565b915061497a82614939565b602082019050919050565b6000602082019050818103600083015261499e81614962565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006149df826144fb565b91506149ea836144fb565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615614a2357614a226149a5565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614a68826144fb565b9150614a73836144fb565b925082614a8357614a82614a2e565b5b828204905092915050565b7f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060008201527f6c6f776572207468616e20302e31250000000000000000000000000000000000602082015250565b6000614aea602f836143e8565b9150614af582614a8e565b604082019050919050565b60006020820190508181036000830152614b1981614add565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000614b7c6028836143e8565b9150614b8782614b20565b604082019050919050565b60006020820190508181036000830152614bab81614b6f565b9050919050565b6000614bbd826144fb565b9150614bc8836144fb565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614bfd57614bfc6149a5565b5b828201905092915050565b7f63616e6e6f7420736574206275796261636b206d6f7265206f6674656e20746860008201527f616e206576657279203130206d696e7574657300000000000000000000000000602082015250565b6000614c646033836143e8565b9150614c6f82614c08565b604082019050919050565b60006020820190508181036000830152614c9381614c57565b9050919050565b7f4d75737420736574206175746f204c50206275726e2070657263656e7420626560008201527f747765656e20302520616e642031302500000000000000000000000000000000602082015250565b6000614cf66030836143e8565b9150614d0182614c9a565b604082019050919050565b60006020820190508181036000830152614d2581614ce9565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060008201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b6000614d886039836143e8565b9150614d9382614d2c565b604082019050919050565b60006020820190508181036000830152614db781614d7b565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000614e1a6025836143e8565b9150614e2582614dbe565b604082019050919050565b60006020820190508181036000830152614e4981614e0d565b9050919050565b7f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e2060008201527f302e352500000000000000000000000000000000000000000000000000000000602082015250565b6000614eac6024836143e8565b9150614eb782614e50565b604082019050919050565b60006020820190508181036000830152614edb81614e9f565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60008201527f20302e3030312520746f74616c20737570706c792e0000000000000000000000602082015250565b6000614f3e6035836143e8565b9150614f4982614ee2565b604082019050919050565b60006020820190508181036000830152614f6d81614f31565b9050919050565b7f5377617020616d6f756e742063616e6e6f74206265206869676865722074686160008201527f6e20302e352520746f74616c20737570706c792e000000000000000000000000602082015250565b6000614fd06034836143e8565b9150614fdb82614f74565b604082019050919050565b60006020820190508181036000830152614fff81614fc3565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006150626026836143e8565b915061506d82615006565b604082019050919050565b6000602082019050818103600083015261509181615055565b9050919050565b7f4d757374207761697420666f7220636f6f6c646f776e20746f2066696e697368600082015250565b60006150ce6020836143e8565b91506150d982615098565b602082019050919050565b600060208201905081810360008301526150fd816150c1565b9050919050565b7f4d6179206e6f74206e756b65206d6f7265207468616e20313025206f6620746f60008201527f6b656e7320696e204c5000000000000000000000000000000000000000000000602082015250565b6000615160602a836143e8565b915061516b82615104565b604082019050919050565b6000602082019050818103600083015261518f81615153565b9050919050565b6000815190506151a581614505565b92915050565b6000602082840312156151c1576151c0614498565b5b60006151cf84828501615196565b91505092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006152346024836143e8565b915061523f826151d8565b604082019050919050565b6000602082019050818103600083015261526381615227565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006152c66022836143e8565b91506152d18261526a565b604082019050919050565b600060208201905081810360008301526152f5816152b9565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006153586025836143e8565b9150615363826152fc565b604082019050919050565b600060208201905081810360008301526153878161534b565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006153ea6023836143e8565b91506153f58261538e565b604082019050919050565b60006020820190508181036000830152615419816153dd565b9050919050565b7f54726164696e67206973206e6f74206163746976652e00000000000000000000600082015250565b60006154566016836143e8565b915061546182615420565b602082019050919050565b6000602082019050818103600083015261548581615449565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b60208201527f20616c6c6f7765642e0000000000000000000000000000000000000000000000604082015250565b600061550e6049836143e8565b91506155198261548c565b606082019050919050565b6000602082019050818103600083015261553d81615501565b9050919050565b7f427579207472616e7366657220616d6f756e742065786365656473207468652060008201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000602082015250565b60006155a06035836143e8565b91506155ab82615544565b604082019050919050565b600060208201905081810360008301526155cf81615593565b9050919050565b7f4d61782077616c6c657420657863656564656400000000000000000000000000600082015250565b600061560c6013836143e8565b9150615617826155d6565b602082019050919050565b6000602082019050818103600083015261563b816155ff565b9050919050565b7f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560008201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000602082015250565b600061569e6036836143e8565b91506156a982615642565b604082019050919050565b600060208201905081810360008301526156cd81615691565b9050919050565b60006156df826144fb565b91506156ea836144fb565b9250828210156156fd576156fc6149a5565b5b828203905092915050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006157646026836143e8565b915061576f82615708565b604082019050919050565b6000602082019050818103600083015261579381615757565b9050919050565b600081905092915050565b50565b60006157b560008361579a565b91506157c0826157a5565b600082019050919050565b60006157d6826157a8565b9150819050919050565b60006060820190506157f5600083018661464e565b615802602083018561464e565b61580f604083018461464e565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081519050615884816144cf565b92915050565b6000602082840312156158a05761589f614498565b5b60006158ae84828501615875565b91505092915050565b6000819050919050565b60006158dc6158d76158d2846158b7565b6145d4565b6144fb565b9050919050565b6158ec816158c1565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b615927816144bd565b82525050565b6000615939838361591e565b60208301905092915050565b6000602082019050919050565b600061595d826158f2565b61596781856158fd565b93506159728361590e565b8060005b838110156159a357815161598a888261592d565b975061599583615945565b925050600181019050615976565b5085935050505092915050565b600060a0820190506159c5600083018861464e565b6159d260208301876158e3565b81810360408301526159e48186615952565b90506159f360608301856146f8565b615a00608083018461464e565b9695505050505050565b600060c082019050615a1f60008301896146f8565b615a2c602083018861464e565b615a3960408301876158e3565b615a4660608301866158e3565b615a5360808301856146f8565b615a6060a083018461464e565b979650505050505050565b600080600060608486031215615a8457615a83614498565b5b6000615a9286828701615196565b9350506020615aa386828701615196565b9250506040615ab486828701615196565b915050925092509256fea264697066735822122053d57c06d542b07ed6ef249c1b10f9896c7991e26a88e8aa41e7d085f245354264736f6c634300080a0033