60806040526105dc6009556105dc600a556001600b556103e8600f60006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055506000601260006101000a81548160ff0219169083151502179055506001601260016101000a81548160ff0219169083151502179055506000601260026101000a81548160ff0219169083151502179055506000601260036101000a81548160ff0219169083151502179055506000601260046101000a81548160ff0219169083151502179055506000601260056101000a81548160ff0219169083151502179055506000601260066101000a81548160ff0219169083151502179055503480156200011257600080fd5b5060405162005f4538038062005f458339818101604052810190620001389190620009e1565b6040518060400160405280600481526020017f4e6f6a69000000000000000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f4e4f4a49000000000000000000000000000000000000000000000000000000008152508160029081620001b5919062000ca7565b508060039081620001c7919062000ca7565b50620001d86200026f60201b60201c565b600081905550505062000200620001f46200027460201b60201c565b6200027c60201b60201c565b81600f600c6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806011908162000252919062000ca7565b50620002668360966200034260201b60201c565b50505062000ef0565b600090565b600033905090565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620003648282604051806020016040528060008152506200036860201b60201c565b5050565b6200037a83836200041960201b60201c565b60008373ffffffffffffffffffffffffffffffffffffffff163b146200041457600080549050600083820390505b620003c360008683806001019450866200060060201b60201c565b620003fa576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b818110620003a85781600054146200041157600080fd5b50505b505050565b600080549050600082036200045a576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6200046f60008483856200076160201b60201c565b600160406001901b178202600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550620004fe83620004e060008660006200076760201b60201c565b620004f1856200079760201b60201c565b17620007a760201b60201c565b6004600083815260200190815260200160002081905550600080838301905073ffffffffffffffffffffffffffffffffffffffff85169150828260007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600183015b818114620005a157808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a460018101905062000564565b5060008203620005dd576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806000819055505050620005fb6000848385620007d260201b60201c565b505050565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a026200062e620007d860201b60201c565b8786866040518563ffffffff1660e01b815260040162000652949392919062000e0d565b6020604051808303816000875af19250505080156200069157506040513d601f19601f820116820180604052508101906200068e919062000ebe565b60015b6200070e573d8060008114620006c4576040519150601f19603f3d011682016040523d82523d6000602084013e620006c9565b606091505b50600081510362000706576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b50505050565b60008060e883901c905060e862000786868684620007e060201b60201c565b62ffffff16901b9150509392505050565b60006001821460e11b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff83169250814260a01b178317905092915050565b50505050565b600033905090565b60009392505050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200082a82620007fd565b9050919050565b6200083c816200081d565b81146200084857600080fd5b50565b6000815190506200085c8162000831565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620008b7826200086c565b810181811067ffffffffffffffff82111715620008d957620008d86200087d565b5b80604052505050565b6000620008ee620007e9565b9050620008fc8282620008ac565b919050565b600067ffffffffffffffff8211156200091f576200091e6200087d565b5b6200092a826200086c565b9050602081019050919050565b60005b83811015620009575780820151818401526020810190506200093a565b60008484015250505050565b60006200097a620009748462000901565b620008e2565b90508281526020810184848401111562000999576200099862000867565b5b620009a684828562000937565b509392505050565b600082601f830112620009c657620009c562000862565b5b8151620009d884826020860162000963565b91505092915050565b600080600060608486031215620009fd57620009fc620007f3565b5b600062000a0d868287016200084b565b935050602062000a20868287016200084b565b925050604084015167ffffffffffffffff81111562000a445762000a43620007f8565b5b62000a5286828701620009ae565b9150509250925092565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000aaf57607f821691505b60208210810362000ac55762000ac462000a67565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000b2f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000af0565b62000b3b868362000af0565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000b8862000b8262000b7c8462000b53565b62000b5d565b62000b53565b9050919050565b6000819050919050565b62000ba48362000b67565b62000bbc62000bb38262000b8f565b84845462000afd565b825550505050565b600090565b62000bd362000bc4565b62000be081848462000b99565b505050565b5b8181101562000c085762000bfc60008262000bc9565b60018101905062000be6565b5050565b601f82111562000c575762000c218162000acb565b62000c2c8462000ae0565b8101602085101562000c3c578190505b62000c5462000c4b8562000ae0565b83018262000be5565b50505b505050565b600082821c905092915050565b600062000c7c6000198460080262000c5c565b1980831691505092915050565b600062000c97838362000c69565b9150826002028217905092915050565b62000cb28262000a5c565b67ffffffffffffffff81111562000cce5762000ccd6200087d565b5b62000cda825462000a96565b62000ce782828562000c0c565b600060209050601f83116001811462000d1f576000841562000d0a578287015190505b62000d16858262000c89565b86555062000d86565b601f19841662000d2f8662000acb565b60005b8281101562000d595784890151825560018201915060208501945060208101905062000d32565b8683101562000d79578489015162000d75601f89168262000c69565b8355505b6001600288020188555050505b505050505050565b62000d99816200081d565b82525050565b62000daa8162000b53565b82525050565b600081519050919050565b600082825260208201905092915050565b600062000dd98262000db0565b62000de5818562000dbb565b935062000df781856020860162000937565b62000e02816200086c565b840191505092915050565b600060808201905062000e24600083018762000d8e565b62000e33602083018662000d8e565b62000e42604083018562000d9f565b818103606083015262000e56818462000dcc565b905095945050505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b62000e988162000e61565b811462000ea457600080fd5b50565b60008151905062000eb88162000e8d565b92915050565b60006020828403121562000ed75762000ed6620007f3565b5b600062000ee78482850162000ea7565b91505092915050565b6150458062000f006000396000f3fe6080604052600436106103905760003560e01c80636f8b44b0116101dc578063b187bd2611610102578063cf0ea25e116100a0578063e985e9c51161006f578063e985e9c514610c59578063ea75127614610c96578063f2fde38b14610cd3578063fb6800d114610cfc57610397565b8063cf0ea25e14610bd2578063d2a87a0014610be9578063d2cab05614610c14578063e08e65ea14610c3057610397565b8063c4ae3168116100dc578063c4ae316814610b2a578063c519ae2b14610b41578063c87b56dd14610b6c578063cb30bc2e14610ba957610397565b8063b187bd2614610aab578063b88d4fde14610ad6578063bc912e1a14610aff57610397565b80638da5cb5b1161017a578063a9a10d8211610149578063a9a10d8214610a03578063aa1906e714610a2c578063ad2f852a14610a55578063b0d5f8a214610a8057610397565b80638da5cb5b1461095b57806395d89b4114610986578063a22cb465146109b1578063a3f832a6146109da57610397565b806373c7400e116101b657806373c7400e146108c55780637a067977146108f0578063836133021461091b5780638c5ccdf61461094457610397565b80636f8b44b01461084857806370a0823114610871578063715018a6146108ae57610397565b80632d6b6224116102c157806349df728c1161025f578063571fe0161161022e578063571fe016146107a057806357a17411146107cb5780635b8ad429146107f45780636352211e1461080b57610397565b806349df728c146106f85780634cf5f7a41461072157806354214f691461074c57806355f804b31461077757610397565b806334b6ab1a1161029b57806334b6ab1a146106765780633ccfd60b146106a15780634047638d146106b857806342842e0e146106cf57610397565b80632d6b6224146106045780632db115441461062f57806332cb6b0c1461064b57610397565b8063106466f31161032e57806318160ddd1161030857806318160ddd1461054757806323b872dd146105725780632a55205a1461059b5780632cb952d3146105d957610397565b8063106466f3146104da5780631113ba58146104f1578063167ae3621461051c57610397565b806307e89ec01161036a57806307e89ec01461042d578063081812fc1461045857806308bac69414610495578063095ea7b3146104b157610397565b806301a217561461039c57806301ffc9a7146103c557806306fdde031461040257610397565b3661039757005b600080fd5b3480156103a857600080fd5b506103c360048036038101906103be919061386a565b610d27565b005b3480156103d157600080fd5b506103ec60048036038101906103e79190613902565b610df0565b6040516103f9919061394a565b60405180910390f35b34801561040e57600080fd5b50610417610e6a565b60405161042491906139f5565b60405180910390f35b34801561043957600080fd5b50610442610efc565b60405161044f9190613a30565b60405180910390f35b34801561046457600080fd5b5061047f600480360381019061047a9190613a77565b610f02565b60405161048c9190613ab3565b60405180910390f35b6104af60048036038101906104aa9190613b33565b610f81565b005b3480156104bd57600080fd5b506104d860048036038101906104d39190613b93565b611333565b005b3480156104e657600080fd5b506104ef611477565b005b3480156104fd57600080fd5b506105066114ab565b6040516105139190613a30565b60405180910390f35b34801561052857600080fd5b506105316114b1565b60405161053e9190613bec565b60405180910390f35b34801561055357600080fd5b5061055c6114b7565b6040516105699190613a30565b60405180910390f35b34801561057e57600080fd5b5061059960048036038101906105949190613c07565b6114ce565b005b3480156105a757600080fd5b506105c260048036038101906105bd9190613c5a565b6117f0565b6040516105d0929190613c9a565b60405180910390f35b3480156105e557600080fd5b506105ee611862565b6040516105fb919061394a565b60405180910390f35b34801561061057600080fd5b50610619611875565b604051610626919061394a565b60405180910390f35b61064960048036038101906106449190613a77565b611888565b005b34801561065757600080fd5b50610660611b23565b60405161066d9190613a30565b60405180910390f35b34801561068257600080fd5b5061068b611b29565b6040516106989190613bec565b60405180910390f35b3480156106ad57600080fd5b506106b6611b2f565b005b3480156106c457600080fd5b506106cd611c2f565b005b3480156106db57600080fd5b506106f660048036038101906106f19190613c07565b611c63565b005b34801561070457600080fd5b5061071f600480360381019061071a9190613d01565b611c83565b005b34801561072d57600080fd5b50610736611d8c565b60405161074391906139f5565b60405180910390f35b34801561075857600080fd5b50610761611e1a565b60405161076e919061394a565b60405180910390f35b34801561078357600080fd5b5061079e60048036038101906107999190613e5e565b611e2d565b005b3480156107ac57600080fd5b506107b5611e48565b6040516107c29190613a30565b60405180910390f35b3480156107d757600080fd5b506107f260048036038101906107ed9190613e5e565b611e4e565b005b34801561080057600080fd5b50610809611e69565b005b34801561081757600080fd5b50610832600480360381019061082d9190613a77565b611e9d565b60405161083f9190613ab3565b60405180910390f35b34801561085457600080fd5b5061086f600480360381019061086a9190613a77565b611eaf565b005b34801561087d57600080fd5b5061089860048036038101906108939190613ea7565b611ec1565b6040516108a59190613a30565b60405180910390f35b3480156108ba57600080fd5b506108c3611f79565b005b3480156108d157600080fd5b506108da611f8d565b6040516108e79190613efb565b60405180910390f35b3480156108fc57600080fd5b50610905611fab565b6040516109129190613a30565b60405180910390f35b34801561092757600080fd5b50610942600480360381019061093d9190613f42565b611fb1565b005b34801561095057600080fd5b50610959611fc3565b005b34801561096757600080fd5b50610970611ff7565b60405161097d9190613ab3565b60405180910390f35b34801561099257600080fd5b5061099b612021565b6040516109a891906139f5565b60405180910390f35b3480156109bd57600080fd5b506109d860048036038101906109d39190613f9b565b6120b3565b005b3480156109e657600080fd5b50610a0160048036038101906109fc9190613a77565b61222a565b005b348015610a0f57600080fd5b50610a2a6004803603810190610a259190613f42565b61223c565b005b348015610a3857600080fd5b50610a536004803603810190610a4e9190613a77565b61224e565b005b348015610a6157600080fd5b50610a6a612260565b604051610a779190613ab3565b60405180910390f35b348015610a8c57600080fd5b50610a95612286565b604051610aa2919061394a565b60405180910390f35b348015610ab757600080fd5b50610ac0612299565b604051610acd919061394a565b60405180910390f35b348015610ae257600080fd5b50610afd6004803603810190610af8919061407c565b6122ac565b005b348015610b0b57600080fd5b50610b1461231f565b604051610b219190613a30565b60405180910390f35b348015610b3657600080fd5b50610b3f612325565b005b348015610b4d57600080fd5b50610b56612359565b604051610b63919061394a565b60405180910390f35b348015610b7857600080fd5b50610b936004803603810190610b8e9190613a77565b61236c565b604051610ba091906139f5565b60405180910390f35b348015610bb557600080fd5b50610bd06004803603810190610bcb91906140ff565b6124bb565b005b348015610bde57600080fd5b50610be76128a9565b005b348015610bf557600080fd5b50610bfe6128dd565b604051610c0b919061394a565b60405180910390f35b610c2e6004803603810190610c299190613b33565b6128f0565b005b348015610c3c57600080fd5b50610c576004803603810190610c529190613f42565b612ca2565b005b348015610c6557600080fd5b50610c806004803603810190610c7b919061414c565b612cb4565b604051610c8d919061394a565b60405180910390f35b348015610ca257600080fd5b50610cbd6004803603810190610cb89190613ea7565b612d48565b604051610cca919061394a565b60405180910390f35b348015610cdf57600080fd5b50610cfa6004803603810190610cf59190613ea7565b612d68565b005b348015610d0857600080fd5b50610d11612deb565b604051610d1e9190613bec565b60405180910390f35b610d2f612df1565b6127108160ff161115610d77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6e906141d8565b60405180910390fd5b81600f600c6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060ff16600f60006101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff1602179055505050565b60007f2a55205a000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610e635750610e6282612e6f565b5b9050919050565b606060028054610e7990614227565b80601f0160208091040260200160405190810160405280929190818152602001828054610ea590614227565b8015610ef25780601f10610ec757610100808354040283529160200191610ef2565b820191906000526020600020905b815481529060010190602001808311610ed557829003601f168201915b5050505050905090565b600e5481565b6000610f0d82612f01565b610f43576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6006600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b3373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614610fef576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fe6906142a4565b60405180910390fd5b601260029054906101000a900460ff16601260019054906101000a900460ff161561104f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104690614310565b60405180910390fd5b8061108f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110869061437c565b60405180910390fd5b600c5484808261109f91906143cb565b3410156110e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d890614459565b60405180910390fd5b8560008111611125576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111c906144c5565b60405180910390fd5b600a54816111316114b7565b61113b91906144e5565b111561117c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161117390614565565b60405180910390fd5b600b5481601760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546111ca91906144e5565b111561120b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611202906145d1565b60405180910390fd5b85856013546000336040516020016112239190614639565b604051602081830303815290604052805190602001209050611287848480806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050508383612f60565b6112c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112bd906146a0565b60405180910390fd5b8a601760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461131591906144e5565b92505081905550611326338c612f77565b5050505050505050505050565b600061133e82611e9d565b90508073ffffffffffffffffffffffffffffffffffffffff1661135f612f95565b73ffffffffffffffffffffffffffffffffffffffff16146113c25761138b81611386612f95565b612cb4565b6113c1576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b826006600084815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b61147f612df1565b601260039054906101000a900460ff1615601260036101000a81548160ff021916908315150217905550565b600c5481565b60155481565b60006114c1612f9d565b6001546000540303905090565b60006114d982612fa2565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611540576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008061154c8461306e565b91509150611562818761155d612f95565b613095565b6115ae5761157786611572612f95565b612cb4565b6115ad576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611614576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61162186868660016130d9565b801561162c57600082555b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081546001900391905081905550600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154600101919050819055506116fa856116d68888876130df565b7c020000000000000000000000000000000000000000000000000000000017613107565b600460008681526020019081526020016000208190555060007c0200000000000000000000000000000000000000000000000000000000841603611780576000600185019050600060046000838152602001908152602001600020540361177e57600054811461177d578360046000838152602001908152602001600020819055505b5b505b838573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46117e88686866001613132565b505050505050565b600080600f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16612710600f60009054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff168561184d91906143cb565b61185791906146ef565b915091509250929050565b601260069054906101000a900460ff1681565b601260049054906101000a900460ff1681565b3373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16146118f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ed906142a4565b60405180910390fd5b601260049054906101000a900460ff16601260019054906101000a900460ff1615611956576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161194d90614310565b60405180910390fd5b80611996576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198d9061437c565b60405180910390fd5b600e548280826119a691906143cb565b3410156119e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119df90614459565b60405180910390fd5b8360008111611a2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a23906144c5565b60405180910390fd5b600a5481611a386114b7565b611a4291906144e5565b1115611a83576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7a90614565565b60405180910390fd5b600b5481601760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ad191906144e5565b1115611b12576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b09906145d1565b60405180910390fd5b611b1c3386612f77565b5050505050565b60095481565b60145481565b611b37612df1565b600047905060008111611b7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b769061476c565b60405180910390fd5b60003373ffffffffffffffffffffffffffffffffffffffff1682604051611ba5906147bd565b60006040518083038185875af1925050503d8060008114611be2576040519150601f19603f3d011682016040523d82523d6000602084013e611be7565b606091505b5050905080611c2b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c229061481e565b60405180910390fd5b5050565b611c37612df1565b601260049054906101000a900460ff1615601260046101000a81548160ff021916908315150217905550565b611c7e838383604051806020016040528060008152506122ac565b505050565b611c8b612df1565b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401611cc69190613ab3565b602060405180830381865afa158015611ce3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d079190614853565b90508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401611d44929190613c9a565b6020604051808303816000875af1158015611d63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d879190614895565b505050565b60118054611d9990614227565b80601f0160208091040260200160405190810160405280929190818152602001828054611dc590614227565b8015611e125780601f10611de757610100808354040283529160200191611e12565b820191906000526020600020905b815481529060010190602001808311611df557829003601f168201915b505050505081565b601260009054906101000a900460ff1681565b611e35612df1565b8060109081611e449190614a6e565b5050565b600a5481565b611e56612df1565b8060119081611e659190614a6e565b5050565b611e71612df1565b601260009054906101000a900460ff1615601260006101000a81548160ff021916908315150217905550565b6000611ea882612fa2565b9050919050565b611eb7612df1565b8060098190555050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611f28576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054169050919050565b611f81612df1565b611f8b6000613138565b565b600f60009054906101000a90046bffffffffffffffffffffffff1681565b600b5481565b611fb9612df1565b8060158190555050565b611fcb612df1565b601260059054906101000a900460ff1615601260056101000a81548160ff021916908315150217905550565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606003805461203090614227565b80601f016020809104026020016040519081016040528092919081815260200182805461205c90614227565b80156120a95780601f1061207e576101008083540402835291602001916120a9565b820191906000526020600020905b81548152906001019060200180831161208c57829003601f168201915b5050505050905090565b6120bb612f95565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361211f576040517fb06307db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806007600061212c612f95565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff166121d9612f95565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405161221e919061394a565b60405180910390a35050565b612232612df1565b80600b8190555050565b612244612df1565b8060138190555050565b612256612df1565b80600a8190555050565b600f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601260029054906101000a900460ff1681565b601260019054906101000a900460ff1681565b6122b78484846114ce565b60008373ffffffffffffffffffffffffffffffffffffffff163b14612319576122e2848484846131fe565b612318576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b600d5481565b61232d612df1565b601260019054906101000a900460ff1615601260016101000a81548160ff021916908315150217905550565b601260039054906101000a900460ff1681565b606061237782612f01565b6123b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123ad90614b8c565b60405180910390fd5b601260009054906101000a900460ff1661245c57601180546123d790614227565b80601f016020809104026020016040519081016040528092919081815260200182805461240390614227565b80156124505780601f1061242557610100808354040283529160200191612450565b820191906000526020600020905b81548152906001019060200180831161243357829003601f168201915b505050505090506124b6565b60006010805461246b90614227565b90501161248757604051806020016040528060008152506124b3565b60106124928361334e565b6040516020016124a3929190614cb7565b6040516020818303038152906040525b90505b919050565b3373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614612529576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612520906142a4565b60405180910390fd5b601260059054906101000a900460ff16601260019054906101000a900460ff1615612589576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161258090614310565b60405180910390fd5b806125c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125c09061437c565b60405180910390fd5b60016000811161260e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612605906144c5565b60405180910390fd5b600a548161261a6114b7565b61262491906144e5565b1115612665576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161265c90614565565b60405180910390fd5b600b5481601760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546126b391906144e5565b11156126f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126eb906145d1565b60405180910390fd5b838360155460003360405160200161270c9190614639565b604051602081830303815290604052805190602001209050612770848480806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050508383612f60565b6127af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127a6906146a0565b60405180910390fd5b601660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561283c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161283390614d32565b60405180910390fd5b6001601660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555061289f336001612f77565b5050505050505050565b6128b1612df1565b601260029054906101000a900460ff1615601260026101000a81548160ff021916908315150217905550565b601260059054906101000a900460ff1681565b3373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff161461295e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612955906142a4565b60405180910390fd5b601260039054906101000a900460ff16601260019054906101000a900460ff16156129be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129b590614310565b60405180910390fd5b806129fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129f59061437c565b60405180910390fd5b600d54848082612a0e91906143cb565b341015612a50576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a4790614459565b60405180910390fd5b8560008111612a94576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a8b906144c5565b60405180910390fd5b600a5481612aa06114b7565b612aaa91906144e5565b1115612aeb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ae290614565565b60405180910390fd5b600b5481601760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612b3991906144e5565b1115612b7a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b71906145d1565b60405180910390fd5b8585601454600033604051602001612b929190614639565b604051602081830303815290604052805190602001209050612bf6848480806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050508383612f60565b612c35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c2c906146a0565b60405180910390fd5b8a601760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612c8491906144e5565b92505081905550612c95338c612f77565b5050505050505050505050565b612caa612df1565b8060148190555050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60166020528060005260406000206000915054906101000a900460ff1681565b612d70612df1565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612ddf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612dd690614dc4565b60405180910390fd5b612de881613138565b50565b60135481565b612df96134ae565b73ffffffffffffffffffffffffffffffffffffffff16612e17611ff7565b73ffffffffffffffffffffffffffffffffffffffff1614612e6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e6490614e30565b60405180910390fd5b565b60006301ffc9a760e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480612eca57506380ac58cd60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80612efa5750635b5e139f60e01b827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b9050919050565b600081612f0c612f9d565b11158015612f1b575060005482105b8015612f59575060007c0100000000000000000000000000000000000000000000000000000000600460008581526020019081526020016000205416145b9050919050565b600082612f6d85846134b6565b1490509392505050565b612f9182826040518060200160405280600081525061350c565b5050565b600033905090565b600090565b60008082905080612fb1612f9d565b11613037576000548110156130365760006004600083815260200190815260200160002054905060007c0100000000000000000000000000000000000000000000000000000000821603613034575b6000810361302a576004600083600190039350838152602001908152602001600020549050613000565b8092505050613069565b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b60008060006006600085815260200190815260200160002090508092508254915050915091565b600073ffffffffffffffffffffffffffffffffffffffff8316925073ffffffffffffffffffffffffffffffffffffffff821691508382148383141790509392505050565b50505050565b60008060e883901c905060e86130f68686846135a9565b62ffffff16901b9150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff83169250814260a01b178317905092915050565b50505050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a02613224612f95565b8786866040518563ffffffff1660e01b81526004016132469493929190614ea5565b6020604051808303816000875af192505050801561328257506040513d601f19601f8201168201806040525081019061327f9190614f06565b60015b6132fb573d80600081146132b2576040519150601f19603f3d011682016040523d82523d6000602084013e6132b7565b606091505b5060008151036132f3576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b606060008203613395576040518060400160405280600181526020017f300000000000000000000000000000000000000000000000000000000000000081525090506134a9565b600082905060005b600082146133c75780806133b090614f33565b915050600a826133c091906146ef565b915061339d565b60008167ffffffffffffffff8111156133e3576133e2613d33565b5b6040519080825280601f01601f1916602001820160405280156134155781602001600182028036833780820191505090505b5090505b600085146134a25760018261342e9190614f7b565b9150600a8561343d9190614faf565b603061344991906144e5565b60f81b81838151811061345f5761345e614fe0565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8561349b91906146ef565b9450613419565b8093505050505b919050565b600033905090565b60008082905060005b8451811015613501576134ec828683815181106134df576134de614fe0565b5b60200260200101516135b2565b915080806134f990614f33565b9150506134bf565b508091505092915050565b61351683836135dd565b60008373ffffffffffffffffffffffffffffffffffffffff163b146135a457600080549050600083820390505b61355660008683806001019450866131fe565b61358c576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8181106135435781600054146135a157600080fd5b50505b505050565b60009392505050565b60008183106135ca576135c58284613798565b6135d5565b6135d48383613798565b5b905092915050565b6000805490506000820361361d576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61362a60008483856130d9565b600160406001901b178202600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055506136a18361369260008660006130df565b61369b856137af565b17613107565b6004600083815260200190815260200160002081905550600080838301905073ffffffffffffffffffffffffffffffffffffffff85169150828260007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600183015b81811461374257808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600181019050613707565b506000820361377d576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060008190555050506137936000848385613132565b505050565b600082600052816020526040600020905092915050565b60006001821460e11b9050919050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006137fe826137d3565b9050919050565b61380e816137f3565b811461381957600080fd5b50565b60008135905061382b81613805565b92915050565b600060ff82169050919050565b61384781613831565b811461385257600080fd5b50565b6000813590506138648161383e565b92915050565b60008060408385031215613881576138806137c9565b5b600061388f8582860161381c565b92505060206138a085828601613855565b9150509250929050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6138df816138aa565b81146138ea57600080fd5b50565b6000813590506138fc816138d6565b92915050565b600060208284031215613918576139176137c9565b5b6000613926848285016138ed565b91505092915050565b60008115159050919050565b6139448161392f565b82525050565b600060208201905061395f600083018461393b565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561399f578082015181840152602081019050613984565b60008484015250505050565b6000601f19601f8301169050919050565b60006139c782613965565b6139d18185613970565b93506139e1818560208601613981565b6139ea816139ab565b840191505092915050565b60006020820190508181036000830152613a0f81846139bc565b905092915050565b6000819050919050565b613a2a81613a17565b82525050565b6000602082019050613a456000830184613a21565b92915050565b613a5481613a17565b8114613a5f57600080fd5b50565b600081359050613a7181613a4b565b92915050565b600060208284031215613a8d57613a8c6137c9565b5b6000613a9b84828501613a62565b91505092915050565b613aad816137f3565b82525050565b6000602082019050613ac86000830184613aa4565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112613af357613af2613ace565b5b8235905067ffffffffffffffff811115613b1057613b0f613ad3565b5b602083019150836020820283011115613b2c57613b2b613ad8565b5b9250929050565b600080600060408486031215613b4c57613b4b6137c9565b5b6000613b5a86828701613a62565b935050602084013567ffffffffffffffff811115613b7b57613b7a6137ce565b5b613b8786828701613add565b92509250509250925092565b60008060408385031215613baa57613ba96137c9565b5b6000613bb88582860161381c565b9250506020613bc985828601613a62565b9150509250929050565b6000819050919050565b613be681613bd3565b82525050565b6000602082019050613c016000830184613bdd565b92915050565b600080600060608486031215613c2057613c1f6137c9565b5b6000613c2e8682870161381c565b9350506020613c3f8682870161381c565b9250506040613c5086828701613a62565b9150509250925092565b60008060408385031215613c7157613c706137c9565b5b6000613c7f85828601613a62565b9250506020613c9085828601613a62565b9150509250929050565b6000604082019050613caf6000830185613aa4565b613cbc6020830184613a21565b9392505050565b6000613cce826137f3565b9050919050565b613cde81613cc3565b8114613ce957600080fd5b50565b600081359050613cfb81613cd5565b92915050565b600060208284031215613d1757613d166137c9565b5b6000613d2584828501613cec565b91505092915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613d6b826139ab565b810181811067ffffffffffffffff82111715613d8a57613d89613d33565b5b80604052505050565b6000613d9d6137bf565b9050613da98282613d62565b919050565b600067ffffffffffffffff821115613dc957613dc8613d33565b5b613dd2826139ab565b9050602081019050919050565b82818337600083830152505050565b6000613e01613dfc84613dae565b613d93565b905082815260208101848484011115613e1d57613e1c613d2e565b5b613e28848285613ddf565b509392505050565b600082601f830112613e4557613e44613ace565b5b8135613e55848260208601613dee565b91505092915050565b600060208284031215613e7457613e736137c9565b5b600082013567ffffffffffffffff811115613e9257613e916137ce565b5b613e9e84828501613e30565b91505092915050565b600060208284031215613ebd57613ebc6137c9565b5b6000613ecb8482850161381c565b91505092915050565b60006bffffffffffffffffffffffff82169050919050565b613ef581613ed4565b82525050565b6000602082019050613f106000830184613eec565b92915050565b613f1f81613bd3565b8114613f2a57600080fd5b50565b600081359050613f3c81613f16565b92915050565b600060208284031215613f5857613f576137c9565b5b6000613f6684828501613f2d565b91505092915050565b613f788161392f565b8114613f8357600080fd5b50565b600081359050613f9581613f6f565b92915050565b60008060408385031215613fb257613fb16137c9565b5b6000613fc08582860161381c565b9250506020613fd185828601613f86565b9150509250929050565b600067ffffffffffffffff821115613ff657613ff5613d33565b5b613fff826139ab565b9050602081019050919050565b600061401f61401a84613fdb565b613d93565b90508281526020810184848401111561403b5761403a613d2e565b5b614046848285613ddf565b509392505050565b600082601f83011261406357614062613ace565b5b813561407384826020860161400c565b91505092915050565b60008060008060808587031215614096576140956137c9565b5b60006140a48782880161381c565b94505060206140b58782880161381c565b93505060406140c687828801613a62565b925050606085013567ffffffffffffffff8111156140e7576140e66137ce565b5b6140f38782880161404e565b91505092959194509250565b60008060208385031215614116576141156137c9565b5b600083013567ffffffffffffffff811115614134576141336137ce565b5b61414085828601613add565b92509250509250929050565b60008060408385031215614163576141626137c9565b5b60006141718582860161381c565b92505060206141828582860161381c565b9150509250929050565b7f526f79616c747920666565206869676800000000000000000000000000000000600082015250565b60006141c2601083613970565b91506141cd8261418c565b602082019050919050565b600060208201905081810360008301526141f1816141b5565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061423f57607f821691505b602082108103614252576142516141f8565b5b50919050565b7f43616c6c657220697320616e6f7468657220636f6e7472616374000000000000600082015250565b600061428e601a83613970565b915061429982614258565b602082019050919050565b600060208201905081810360008301526142bd81614281565b9050919050565b7f4d696e74696e6720706175736564000000000000000000000000000000000000600082015250565b60006142fa600e83613970565b9150614305826142c4565b602082019050919050565b60006020820190508181036000830152614329816142ed565b9050919050565b7f4c697374206d696e74696e67206e6f7420616374697665000000000000000000600082015250565b6000614366601783613970565b915061437182614330565b602082019050919050565b6000602082019050818103600083015261439581614359565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006143d682613a17565b91506143e183613a17565b92508282026143ef81613a17565b915082820484148315176144065761440561439c565b5b5092915050565b7f496e73756666696369656e742046756e64730000000000000000000000000000600082015250565b6000614443601283613970565b915061444e8261440d565b602082019050919050565b6000602082019050818103600083015261447281614436565b9050919050565b7f4d696e74206174206c656173742031204e6f6a69000000000000000000000000600082015250565b60006144af601483613970565b91506144ba82614479565b602082019050919050565b600060208201905081810360008301526144de816144a2565b9050919050565b60006144f082613a17565b91506144fb83613a17565b92508282019050808211156145135761451261439c565b5b92915050565b7f43616e6e6f74206d696e74206265796f756e64204d617820537570706c790000600082015250565b600061454f601e83613970565b915061455a82614519565b602082019050919050565b6000602082019050818103600083015261457e81614542565b9050919050565b7f4d6178204e6f6a69207065722057616c6c657420657863656465640000000000600082015250565b60006145bb601b83613970565b91506145c682614585565b602082019050919050565b600060208201905081810360008301526145ea816145ae565b9050919050565b60008160601b9050919050565b6000614609826145f1565b9050919050565b600061461b826145fe565b9050919050565b61463361462e826137f3565b614610565b82525050565b60006146458284614622565b60148201915081905092915050565b7f41646472657373206e6f74206c69737465640000000000000000000000000000600082015250565b600061468a601283613970565b915061469582614654565b602082019050919050565b600060208201905081810360008301526146b98161467d565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006146fa82613a17565b915061470583613a17565b925082614715576147146146c0565b5b828204905092915050565b7f4e6f207061796f757420746f2077697468647261770000000000000000000000600082015250565b6000614756601583613970565b915061476182614720565b602082019050919050565b6000602082019050818103600083015261478581614749565b9050919050565b600081905092915050565b50565b60006147a760008361478c565b91506147b282614797565b600082019050919050565b60006147c88261479a565b9150819050919050565b7f5769746864726177616c206661696c6564000000000000000000000000000000600082015250565b6000614808601183613970565b9150614813826147d2565b602082019050919050565b60006020820190508181036000830152614837816147fb565b9050919050565b60008151905061484d81613a4b565b92915050565b600060208284031215614869576148686137c9565b5b60006148778482850161483e565b91505092915050565b60008151905061488f81613f6f565b92915050565b6000602082840312156148ab576148aa6137c9565b5b60006148b984828501614880565b91505092915050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026149247fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826148e7565b61492e86836148e7565b95508019841693508086168417925050509392505050565b6000819050919050565b600061496b61496661496184613a17565b614946565b613a17565b9050919050565b6000819050919050565b61498583614950565b61499961499182614972565b8484546148f4565b825550505050565b600090565b6149ae6149a1565b6149b981848461497c565b505050565b5b818110156149dd576149d26000826149a6565b6001810190506149bf565b5050565b601f821115614a22576149f3816148c2565b6149fc846148d7565b81016020851015614a0b578190505b614a1f614a17856148d7565b8301826149be565b50505b505050565b600082821c905092915050565b6000614a4560001984600802614a27565b1980831691505092915050565b6000614a5e8383614a34565b9150826002028217905092915050565b614a7782613965565b67ffffffffffffffff811115614a9057614a8f613d33565b5b614a9a8254614227565b614aa58282856149e1565b600060209050601f831160018114614ad85760008415614ac6578287015190505b614ad08582614a52565b865550614b38565b601f198416614ae6866148c2565b60005b82811015614b0e57848901518255600182019150602085019450602081019050614ae9565b86831015614b2b5784890151614b27601f891682614a34565b8355505b6001600288020188555050505b505050505050565b7f6e6f6e6578697374656e7420746f6b656e000000000000000000000000000000600082015250565b6000614b76601183613970565b9150614b8182614b40565b602082019050919050565b60006020820190508181036000830152614ba581614b69565b9050919050565b600081905092915050565b60008154614bc481614227565b614bce8186614bac565b94506001821660008114614be95760018114614bfe57614c31565b60ff1983168652811515820286019350614c31565b614c07856148c2565b60005b83811015614c2957815481890152600182019150602081019050614c0a565b838801955050505b50505092915050565b6000614c4582613965565b614c4f8185614bac565b9350614c5f818560208601613981565b80840191505092915050565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000600082015250565b6000614ca1600583614bac565b9150614cac82614c6b565b600582019050919050565b6000614cc38285614bb7565b9150614ccf8284614c3a565b9150614cda82614c94565b91508190509392505050565b7f4e6f6a6920616c726561647920636c61696d6564000000000000000000000000600082015250565b6000614d1c601483613970565b9150614d2782614ce6565b602082019050919050565b60006020820190508181036000830152614d4b81614d0f565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614dae602683613970565b9150614db982614d52565b604082019050919050565b60006020820190508181036000830152614ddd81614da1565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000614e1a602083613970565b9150614e2582614de4565b602082019050919050565b60006020820190508181036000830152614e4981614e0d565b9050919050565b600081519050919050565b600082825260208201905092915050565b6000614e7782614e50565b614e818185614e5b565b9350614e91818560208601613981565b614e9a816139ab565b840191505092915050565b6000608082019050614eba6000830187613aa4565b614ec76020830186613aa4565b614ed46040830185613a21565b8181036060830152614ee68184614e6c565b905095945050505050565b600081519050614f00816138d6565b92915050565b600060208284031215614f1c57614f1b6137c9565b5b6000614f2a84828501614ef1565b91505092915050565b6000614f3e82613a17565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614f7057614f6f61439c565b5b600182019050919050565b6000614f8682613a17565b9150614f9183613a17565b9250828203905081811115614fa957614fa861439c565b5b92915050565b6000614fba82613a17565b9150614fc583613a17565b925082614fd557614fd46146c0565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea2646970667358221220ec247605965f6ff315054f7f97eb05f106c8a346898dc779d55736ee156a5c3964736f6c634300081100330000000000000000000000002ed0bf51872c35a26271505b11a0aebe78b12de700000000000000000000000027ea1d065a8c10e22ff313eccac3925da572710d00000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000035697066733a2f2f516d6265327a66414c38727747694d3633724b41534651507252737536595354435761797545624a4d68534a6a740000000000000000000000