60806040526040518060400160405280601581526020017f426c61636b436f712050726f7065727479204e46540000000000000000000000815250600290816200004a919062000a31565b506040518060400160405280600381526020017f42435100000000000000000000000000000000000000000000000000000000008152506003908162000091919062000a31565b506101f4600760146101000a8154816bffffffffffffffffffffffff02191690836bffffffffffffffffffffffff16021790555060056009555f600d55600a600e555f600f556104336010556114ff6011555f6012555f6013555f601455604051806101a001604052806040518060400160405280601481526020017f496e766573746f727320506c617967726f756e6400000000000000000000000081525081526020016040518060400160405280601381526020017f4d6964646c652d436c617373204d69726167650000000000000000000000000081525081526020016040518060400160405280600c81526020017f52656e746572732054726170000000000000000000000000000000000000000081525081526020016040518060400160405280600981526020017f54617820486176656e000000000000000000000000000000000000000000000081525081526020016040518060400160405280601381526020017f576f726b696e672d436c6173732047756c61670000000000000000000000000081525081526020016040518060400160405280600c81526020017f557262616e20426c69676874000000000000000000000000000000000000000081525081526020016040518060400160405280601681526020017f54617820446f646765727320506c617967726f756e640000000000000000000081525081526020016040518060400160405280601381526020017f436f72706f72617465204c616e6420477261620000000000000000000000000081525081526020016040518060400160405280601381526020017f47656e747269666965642050617261646973650000000000000000000000000081525081526020016040518060400160405280600d81526020017f466175782053756275726269610000000000000000000000000000000000000081525081526020016040518060400160405280601081526020017f456c69746520496e766573746d656e740000000000000000000000000000000081525081526020016040518060400160405280601281526020017f536c756d6c6f72647320476f6c646d696e65000000000000000000000000000081525081526020016040518060400160405280601381526020017f4d6f6e6f706f6c7920506c617967726f756e6400000000000000000000000000815250815250602090600d6200040a929190620006e8565b5034801562000417575f80fd5b50604051620061be380380620061be83398181016040528101906200043d919062000cce565b335f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620004b1575f6040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401620004a8919062000d82565b60405180910390fd5b620004c2816200062760201b60201c565b506001808190555084600a5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600c5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508160085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503360075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600490816200061b919062000a31565b50505050505062000d9d565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b828054828255905f5260205f2090810192821562000733579160200282015b828111156200073257825182908162000721919062000a31565b509160200191906001019062000707565b5b50905062000742919062000746565b5090565b5b8082111562000769575f81816200075f91906200076d565b5060010162000747565b5090565b5080546200077b9062000831565b5f825580601f106200078e5750620007ad565b601f0160209004905f5260205f2090810190620007ac9190620007b0565b5b50565b5b80821115620007c9575f815f905550600101620007b1565b5090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200084957607f821691505b6020821081036200085f576200085e62000804565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620008c37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000886565b620008cf868362000886565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f62000919620009136200090d84620008e7565b620008f0565b620008e7565b9050919050565b5f819050919050565b6200093483620008f9565b6200094c620009438262000920565b84845462000892565b825550505050565b5f90565b6200096262000954565b6200096f81848462000929565b505050565b5b8181101562000996576200098a5f8262000958565b60018101905062000975565b5050565b601f821115620009e557620009af8162000865565b620009ba8462000877565b81016020851015620009ca578190505b620009e2620009d98562000877565b83018262000974565b50505b505050565b5f82821c905092915050565b5f62000a075f1984600802620009ea565b1980831691505092915050565b5f62000a218383620009f6565b9150826002028217905092915050565b62000a3c82620007cd565b67ffffffffffffffff81111562000a585762000a57620007d7565b5b62000a64825462000831565b62000a718282856200099a565b5f60209050601f83116001811462000aa7575f841562000a92578287015190505b62000a9e858262000a14565b86555062000b0d565b601f19841662000ab78662000865565b5f5b8281101562000ae05784890151825560018201915060208501945060208101905062000ab9565b8683101562000b00578489015162000afc601f891682620009f6565b8355505b6001600288020188555050505b505050505050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f62000b518262000b26565b9050919050565b62000b638162000b45565b811462000b6e575f80fd5b50565b5f8151905062000b818162000b58565b92915050565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b62000baa8262000b8f565b810181811067ffffffffffffffff8211171562000bcc5762000bcb620007d7565b5b80604052505050565b5f62000be062000b15565b905062000bee828262000b9f565b919050565b5f67ffffffffffffffff82111562000c105762000c0f620007d7565b5b62000c1b8262000b8f565b9050602081019050919050565b5f5b8381101562000c4757808201518184015260208101905062000c2a565b5f8484015250505050565b5f62000c6862000c628462000bf3565b62000bd5565b90508281526020810184848401111562000c875762000c8662000b8b565b5b62000c9484828562000c28565b509392505050565b5f82601f83011262000cb35762000cb262000b87565b5b815162000cc584826020860162000c52565b91505092915050565b5f805f805f60a0868803121562000cea5762000ce962000b1e565b5b5f62000cf98882890162000b71565b955050602062000d0c8882890162000b71565b945050604062000d1f8882890162000b71565b935050606062000d328882890162000b71565b925050608086015167ffffffffffffffff81111562000d565762000d5562000b22565b5b62000d648882890162000c9c565b9150509295509295909350565b62000d7c8162000b45565b82525050565b5f60208201905062000d975f83018462000d71565b92915050565b6154138062000dab5f395ff3fe608060405260043610610224575f3560e01c806368fa7c5b1161012257806392642744116100aa578063b88d4fde1161006e578063b88d4fde146107fb578063c87b56dd14610823578063d5b3621b1461085f578063e985e9c514610887578063f2fde38b146108c357610224565b8063926427441461075957806395d89b4114610775578063a22cb4651461079f578063a9518e88146107c7578063b7e7da6a146107d157610224565b8063715018a6116100f1578063715018a6146106a957806379f49512146106bf578063868ff4a2146106e95780638945ffd5146107055780638da5cb5b1461072f57610224565b806368fa7c5b146105cb5780636ab50255146105f55780636afcda2a1461063157806370a082311461066d57610224565b806323b872dd116101b057806342842e0e1161017457806342842e0e146104ed57806355f804b3146105155780636352211e1461053d57806364a169cf146105795780636737c9c1146105a157610224565b806323b872dd146103fa5780632a55205a1461042257806333b31fc11461045f5780633af32abf1461049b5780633ccfd60b146104d757610224565b80630a049b84116101f75780630a049b84146102f257806311ee0ec51461032e578063126dbe431461036a5780631c0ce3d3146103a857806320badd32146103d057610224565b806301ffc9a71461022857806306fdde0314610264578063081812fc1461028e578063095ea7b3146102ca575b5f80fd5b348015610233575f80fd5b5061024e60048036038101906102499190613585565b6108eb565b60405161025b91906135ca565b60405180910390f35b34801561026f575f80fd5b50610278610a34565b604051610285919061366d565b60405180910390f35b348015610299575f80fd5b506102b460048036038101906102af91906136c0565b610ac4565b6040516102c1919061372a565b60405180910390f35b3480156102d5575f80fd5b506102f060048036038101906102eb919061376d565b610adf565b005b3480156102fd575f80fd5b50610318600480360381019061031391906136c0565b610b05565b604051610325919061381e565b60405180910390f35b348015610339575f80fd5b50610354600480360381019061034f91906136c0565b610b22565b604051610361919061366d565b60405180910390f35b348015610375575f80fd5b50610390600480360381019061038b91906136c0565b610bc3565b60405161039f93929190613861565b60405180910390f35b3480156103b3575f80fd5b506103ce60048036038101906103c991906136c0565b610c9f565b005b3480156103db575f80fd5b506103e4610cb1565b6040516103f1919061389d565b60405180910390f35b348015610405575f80fd5b50610420600480360381019061041b91906138b6565b610cbb565b005b34801561042d575f80fd5b5061044860048036038101906104439190613906565b610dc2565b604051610456929190613944565b60405180910390f35b34801561046a575f80fd5b50610485600480360381019061048091906136c0565b610e37565b604051610492919061389d565b60405180910390f35b3480156104a6575f80fd5b506104c160048036038101906104bc919061396b565b610e4c565b6040516104ce91906135ca565b60405180910390f35b3480156104e2575f80fd5b506104eb610e9e565b005b3480156104f8575f80fd5b50610513600480360381019061050e91906138b6565b610faf565b005b348015610520575f80fd5b5061053b60048036038101906105369190613ac2565b610fda565b005b348015610548575f80fd5b50610563600480360381019061055e91906136c0565b610ff5565b604051610570919061372a565b60405180910390f35b348015610584575f80fd5b5061059f600480360381019061059a919061376d565b611006565b005b3480156105ac575f80fd5b506105b56111ca565b6040516105c2919061389d565b60405180910390f35b3480156105d6575f80fd5b506105df6111d0565b6040516105ec919061389d565b60405180910390f35b348015610600575f80fd5b5061061b600480360381019061061691906136c0565b6111db565b6040516106289190613b09565b60405180910390f35b34801561063c575f80fd5b50610657600480360381019061065291906136c0565b611201565b604051610664919061389d565b60405180910390f35b348015610678575f80fd5b50610693600480360381019061068e919061396b565b61121b565b6040516106a0919061389d565b60405180910390f35b3480156106b4575f80fd5b506106bd6112cf565b005b3480156106ca575f80fd5b506106d36112e2565b6040516106e0919061389d565b60405180910390f35b61070360048036038101906106fe91906136c0565b6112e8565b005b348015610710575f80fd5b5061071961156c565b604051610726919061389d565b60405180910390f35b34801561073a575f80fd5b50610743611572565b604051610750919061372a565b60405180910390f35b610773600480360381019061076e91906136c0565b611599565b005b348015610780575f80fd5b506107896116a7565b604051610796919061366d565b60405180910390f35b3480156107aa575f80fd5b506107c560048036038101906107c09190613b4c565b611737565b005b6107cf61175d565b005b3480156107dc575f80fd5b506107e56118e3565b6040516107f2919061389d565b60405180910390f35b348015610806575f80fd5b50610821600480360381019061081c9190613be7565b6118ed565b005b34801561082e575f80fd5b50610849600480360381019061084491906136c0565b61195e565b604051610856919061366d565b60405180910390f35b34801561086a575f80fd5b50610885600480360381019061088091906136c0565b6119c4565b005b348015610892575f80fd5b506108ad60048036038101906108a89190613c6b565b6119d6565b6040516108ba91906135ca565b60405180910390f35b3480156108ce575f80fd5b506108e960048036038101906108e4919061396b565b611a64565b005b5f7f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806109b557507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610a1d57507f2a55205a000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610a2d5750610a2c82611ae8565b5b9050919050565b606060028054610a4390613cd6565b80601f0160208091040260200160405190810160405280929190818152602001828054610a6f90613cd6565b8015610aba5780601f10610a9157610100808354040283529160200191610aba565b820191905f5260205f20905b815481529060010190602001808311610a9d57829003601f168201915b5050505050905090565b5f610ace82611b51565b50610ad882611bd5565b9050919050565b610ae7611c0e565b610af98282610af4611c54565b611c5b565b610b01611c6d565b5050565b6015602052805f5260405f205f915054906101000a900460ff1681565b6060601a5f8381526020019081526020015f208054610b4090613cd6565b80601f0160208091040260200160405190810160405280929190818152602001828054610b6c90613cd6565b8015610bb75780601f10610b8e57610100808354040283529160200191610bb7565b820191905f5260205f20905b815481529060010190602001808311610b9a57829003601f168201915b50505050509050919050565b5f60605f60185f8581526020019081526020015f205f9054906101000a900460ff16601a5f8681526020019081526020015f20601b5f8781526020019081526020015f2054818054610c1490613cd6565b80601f0160208091040260200160405190810160405280929190818152602001828054610c4090613cd6565b8015610c8b5780601f10610c6257610100808354040283529160200191610c8b565b820191905f5260205f20905b815481529060010190602001808311610c6e57829003601f168201915b505050505091509250925092509193909250565b610ca7611c76565b8060058190555050565b65886c98b7600081565b610cc3611c0e565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2890613d76565b60405180910390fd5b5f610d448383610d3f611c54565b611cfd565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610db4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dab90613e04565b60405180910390fd5b50610dbd611c6d565b505050565b5f805f612710600760149054906101000a90046bffffffffffffffffffffffff166bffffffffffffffffffffffff1685610dfc9190613e4f565b610e069190613ebd565b905060075f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168192509250509250929050565b6016602052805f5260405f205f915090505481565b5f601e5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b610ea6611c76565b610eae611c0e565b5f4790505f8111610ef4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610eeb90613f37565b60405180910390fd5b5f610efd611572565b73ffffffffffffffffffffffffffffffffffffffff1682604051610f2090613f82565b5f6040518083038185875af1925050503d805f8114610f5a576040519150601f19603f3d011682016040523d82523d5f602084013e610f5f565b606091505b5050905080610fa3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9a90613fe0565b60405180910390fd5b5050610fad611c6d565b565b610fb7611c0e565b610fc2838383610cbb565b610fcd838383611f08565b610fd5611c6d565b505050565b610fe2611c76565b8060049081610ff1919061419b565b5050565b5f610fff82611b51565b9050919050565b61100e611c76565b60648160125461101e919061426a565b111561105f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110569061430d565b60405180910390fd5b5f5b818110156111c5575f600f549050606481106110b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110a990614375565b60405180910390fd5b5f600390505f600d42846040516020016110cd9291906143b3565b604051602081830303815290604052805190602001205f1c6110ef91906143de565b90505f6801a055690d9db8000090505f8383836040516020016111149392919061440e565b6040516020818303038152906040529050611130888683611f27565b600260155f8781526020019081526020015f205f6101000a81548160ff02191690836002811115611164576111636137ab565b5b02179055508260165f8781526020019081526020015f208190555060125f81548092919061119190614443565b9190505550600f5f8154809291906111a890614443565b9190505550505050505080806111bd90614443565b915050611061565b505050565b614e2081565b66071afd498d000081565b5f60185f8381526020019081526020015f205f9054906101000a900460ff169050919050565b5f601b5f8381526020019081526020015f20549050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361128a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611281906144fa565b60405180910390fd5b60175f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6112d7611c76565b6112e05f61214d565b565b60065481565b60055442101561132d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132490614588565b60405180910390fd5b601e5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166113b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113ad906145f0565b60405180910390fd5b5f811180156113c75750600e548111155b611406576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113fd90614658565b60405180910390fd5b600e5481601f5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054611452919061426a565b1115611493576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161148a906146c0565b60405180910390fd5b65886c98b76000816114a59190613e4f565b34146114e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114dd90614728565b60405180910390fd5b6114ef3461220e565b5f5b818110156115685761150333826127bd565b601f5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f81548092919061155090614443565b9190505550808061156090614443565b9150506114f1565b5050565b60055481565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6006544210156115de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d5906147b6565b60405180910390fd5b5f8111611620576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161790614844565b60405180910390fd5b65b5e620f48000816116329190613e4f565b3414611673576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161166a90614728565b60405180910390fd5b61167c3461220e565b5f5b818110156116a35761169033826127bd565b808061169b90614443565b91505061167e565b5050565b6060600380546116b690613cd6565b80601f01602080910402602001604051908101604052809291908181526020018280546116e290613cd6565b801561172d5780601f106117045761010080835404028352916020019161172d565b820191905f5260205f20905b81548152906001019060200180831161171057829003601f168201915b5050505050905090565b61173f611c0e565b61175161174a611c54565b8383612b3d565b611759611c6d565b5050565b611765611c0e565b66071afd498d000034146117ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117a590614728565b60405180910390fd5b601e5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1615611838576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182f906148ac565b60405180910390fd5b6118413461220e565b6001601e5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff167fc378982e8a4ca2c376697244cd60a1a488ecc1f556010dff15bcbbbd15786a3560405160405180910390a26118e1611c6d565b565b65b5e620f4800081565b6118f5611c0e565b611900858585610cbb565b61194f85858585858080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050612ca4565b611957611c6d565b5050505050565b606061196982611b51565b505f611973612e52565b90505f8151116119915760405180602001604052805f8152506119bc565b8061199b84612ee2565b6040516020016119ac929190614904565b6040516020818303038152906040525b915050919050565b6119cc611c76565b8060068190555050565b5f601d5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16905092915050565b611a6c611c76565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611adc575f6040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401611ad3919061372a565b60405180910390fd5b611ae58161214d565b50565b5f7f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b5f80611b5c83612fac565b90505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611bcc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bc390614971565b60405180910390fd5b80915050919050565b5f601c5f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600260015403611c4a576040517f3ee5aeb500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002600181905550565b5f33905090565b611c688383836001612fe5565b505050565b60018081905550565b611c7e611c54565b73ffffffffffffffffffffffffffffffffffffffff16611c9c611572565b73ffffffffffffffffffffffffffffffffffffffff1614611cfb57611cbf611c54565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401611cf2919061372a565b60405180910390fd5b565b5f80611d0884612fac565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614611d4957611d488184866131a2565b5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611dd457611d885f855f80612fe5565b600160175f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825403925050819055505b5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614611e5357600160175f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055505b8460195f8681526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4809150509392505050565b611f2283838360405180602001604052805f815250612ca4565b505050565b611f2f611c0e565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611f9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f94906149d9565b60405180910390fd5b600160175f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254611fea919061426a565b925050819055508260195f8481526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a45f805f838060200190518101906120b29190614a35565b9250925092508260185f8781526020019081526020015f205f6101000a81548160ff021916908360ff160217905550602082815481106120f5576120f4614a85565b5b905f5260205f2001601a5f8781526020019081526020015f20908161211a9190614ad9565b5080601b5f8781526020019081526020015f208190555061213d5f878787612ca4565b505050612148611c6d565b505050565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f8111156127ba575f6064600954836122279190613e4f565b6122319190613ebd565b905060085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc8290811502906040515f60405180830381858888f19350505050158015612297573d5f803e3d5ffd5b505f81836122a59190614bbe565b9050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d0e30db0826040518263ffffffff1660e01b81526004015f604051808303818588803b15801561230e575f80fd5b505af1158015612320573d5f803e3d5ffd5b50505050505f600267ffffffffffffffff8111156123415761234061399e565b5b60405190808252806020026020018201604052801561236f5781602001602082028036833780820191505090505b509050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16815f815181106123a7576123a6614a85565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160018151811061241757612416614a85565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016124ac919061372a565b602060405180830381865afa1580156124c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124eb9190614bf1565b9050600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b3600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b815260040161256a929190613944565b6020604051808303815f875af1158015612586573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125aa9190614c30565b50600a5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635c11d795825f8530426040518663ffffffff1660e01b815260040161260d959493929190614d4b565b5f604051808303815f87803b158015612624575f80fd5b505af1158015612636573d5f803e3d5ffd5b505050505f600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401612695919061372a565b602060405180830381865afa1580156126b0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126d49190614bf1565b90505f8111156127b457600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166342966c68826040518263ffffffff1660e01b8152600401612738919061389d565b5f604051808303815f87803b15801561274f575f80fd5b505af1158015612761573d5f803e3d5ffd5b505050503373ffffffffffffffffffffffffffffffffffffffff167ffd38818f5291bf0bb3a2a48aadc06ba8757865d1dabd804585338aab3009dcb6826040516127ab919061389d565b60405180910390a25b50505050505b50565b5f8060644244856040516020016127d693929190614da3565b604051602081830303815290604052805190602001205f1c6127f891906143de565b90505f8060058310801561280e57506064601254105b156128d857600f549350610434841061285c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161285390614e4f565b60405180910390fd5b600f5f81548092919061286e90614443565b919050555060125f81548092919061288590614443565b9190505550600260155f8681526020019081526020015f205f6101000a81548160ff021916908360028111156128be576128bd6137ab565b5b0217905550600391506801a055690d9db800009050612a75565b6019831080156128eb5750610190601354105b156129b55760105493506115008410612939576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161293090614eb7565b60405180910390fd5b60105f81548092919061294b90614443565b919050555060135f81548092919061296290614443565b9190505550600160155f8681526020019081526020015f205f6101000a81548160ff0219169083600281111561299b5761299a6137ab565b5b0217905550600291506801158e460913d000009050612a74565b6011549350614e2084106129fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129f590614f45565b60405180910390fd5b60115f815480929190612a1090614443565b919050555060145f815480929190612a2790614443565b91905055505f60155f8681526020019081526020015f205f6101000a81548160ff02191690836002811115612a5f57612a5e6137ab565b5b021790555060019150678ac7230489e8000090505b5b612a7e8461325f565b5f60165f8681526020019081526020015f205490505f838284604051602001612aa99392919061440e565b6040516020818303038152906040529050612ac5888783611f27565b858873ffffffffffffffffffffffffffffffffffffffff167f17ebbd572a73ba5314edabae8138ef88f4ddea6970108552ca3d2328669b3d8b8660208681548110612b1357612b12614a85565b5b905f5260205f200187604051612b2b93929190614fe4565b60405180910390a35050505050505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612bab576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ba290615090565b60405180910390fd5b80601d5f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051612c9791906135ca565b60405180910390a3505050565b5f8373ffffffffffffffffffffffffffffffffffffffff163b1115612e4c578273ffffffffffffffffffffffffffffffffffffffff1663150b7a02612ce7611c54565b8685856040518563ffffffff1660e01b8152600401612d099493929190615100565b6020604051808303815f875af1925050508015612d4457506040513d601f19601f82011682018060405250810190612d41919061515e565b60015b612dc3573d805f8114612d72576040519150601f19603f3d011682016040523d82523d5f602084013e612d77565b606091505b505f815103612dbb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612db2906151f9565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614612e4a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e41906151f9565b60405180910390fd5b505b50505050565b606060048054612e6190613cd6565b80601f0160208091040260200160405190810160405280929190818152602001828054612e8d90613cd6565b8015612ed85780601f10612eaf57610100808354040283529160200191612ed8565b820191905f5260205f20905b815481529060010190602001808311612ebb57829003601f168201915b5050505050905090565b60605f6001612ef08461330e565b0190505f8167ffffffffffffffff811115612f0e57612f0d61399e565b5b6040519080825280601f01601f191660200182016040528015612f405781602001600182028036833780820191505090505b5090505f82602001820190505b600115612fa1578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8581612f9657612f95613e90565b5b0494505f8503612f4d575b819350505050919050565b5f60195f8381526020019081526020015f205f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b808061301d57505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b1561314d575f61302c84611b51565b90505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561309657508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614155b80156130a957506130a781846119d6565b155b156130e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130e090615261565b60405180910390fd5b811561314b57838573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b83601c5f8581526020019081526020015f205f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b6131ad83838361345f565b61325a575f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361321f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613216906152ef565b60405180910390fd5b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161325190615357565b60405180910390fd5b505050565b5f6020805490508261327191906143de565b905060208054905081106132ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016132b1906153bf565b60405180910390fd5b602081815481106132ce576132cd614a85565b5b905f5260205f2001601a5f8481526020019081526020015f2090816132f39190614ad9565b508060165f8481526020019081526020015f20819055505050565b5f805f90507a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000831061336a577a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083816133605761335f613e90565b5b0492506040810190505b6d04ee2d6d415b85acef810000000083106133a7576d04ee2d6d415b85acef8100000000838161339d5761339c613e90565b5b0492506020810190505b662386f26fc1000083106133d657662386f26fc1000083816133cc576133cb613e90565b5b0492506010810190505b6305f5e10083106133ff576305f5e10083816133f5576133f4613e90565b5b0492506008810190505b612710831061342457612710838161341a57613419613e90565b5b0492506004810190505b60648310613447576064838161343d5761343c613e90565b5b0492506002810190505b600a8310613456576001810190505b80915050919050565b5f8073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561351657508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806134d757506134d684846119d6565b5b8061351557508273ffffffffffffffffffffffffffffffffffffffff166134fd83611bd5565b73ffffffffffffffffffffffffffffffffffffffff16145b5b90509392505050565b5f604051905090565b5f80fd5b5f80fd5b5f7fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61356481613530565b811461356e575f80fd5b50565b5f8135905061357f8161355b565b92915050565b5f6020828403121561359a57613599613528565b5b5f6135a784828501613571565b91505092915050565b5f8115159050919050565b6135c4816135b0565b82525050565b5f6020820190506135dd5f8301846135bb565b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561361a5780820151818401526020810190506135ff565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61363f826135e3565b61364981856135ed565b93506136598185602086016135fd565b61366281613625565b840191505092915050565b5f6020820190508181035f8301526136858184613635565b905092915050565b5f819050919050565b61369f8161368d565b81146136a9575f80fd5b50565b5f813590506136ba81613696565b92915050565b5f602082840312156136d5576136d4613528565b5b5f6136e2848285016136ac565b91505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f613714826136eb565b9050919050565b6137248161370a565b82525050565b5f60208201905061373d5f83018461371b565b92915050565b61374c8161370a565b8114613756575f80fd5b50565b5f8135905061376781613743565b92915050565b5f806040838503121561378357613782613528565b5b5f61379085828601613759565b92505060206137a1858286016136ac565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b600381106137e9576137e86137ab565b5b50565b5f8190506137f9826137d8565b919050565b5f613808826137ec565b9050919050565b613818816137fe565b82525050565b5f6020820190506138315f83018461380f565b92915050565b5f60ff82169050919050565b61384c81613837565b82525050565b61385b8161368d565b82525050565b5f6060820190506138745f830186613843565b81810360208301526138868185613635565b90506138956040830184613852565b949350505050565b5f6020820190506138b05f830184613852565b92915050565b5f805f606084860312156138cd576138cc613528565b5b5f6138da86828701613759565b93505060206138eb86828701613759565b92505060406138fc868287016136ac565b9150509250925092565b5f806040838503121561391c5761391b613528565b5b5f613929858286016136ac565b925050602061393a858286016136ac565b9150509250929050565b5f6040820190506139575f83018561371b565b6139646020830184613852565b9392505050565b5f602082840312156139805761397f613528565b5b5f61398d84828501613759565b91505092915050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6139d482613625565b810181811067ffffffffffffffff821117156139f3576139f261399e565b5b80604052505050565b5f613a0561351f565b9050613a1182826139cb565b919050565b5f67ffffffffffffffff821115613a3057613a2f61399e565b5b613a3982613625565b9050602081019050919050565b828183375f83830152505050565b5f613a66613a6184613a16565b6139fc565b905082815260208101848484011115613a8257613a8161399a565b5b613a8d848285613a46565b509392505050565b5f82601f830112613aa957613aa8613996565b5b8135613ab9848260208601613a54565b91505092915050565b5f60208284031215613ad757613ad6613528565b5b5f82013567ffffffffffffffff811115613af457613af361352c565b5b613b0084828501613a95565b91505092915050565b5f602082019050613b1c5f830184613843565b92915050565b613b2b816135b0565b8114613b35575f80fd5b50565b5f81359050613b4681613b22565b92915050565b5f8060408385031215613b6257613b61613528565b5b5f613b6f85828601613759565b9250506020613b8085828601613b38565b9150509250929050565b5f80fd5b5f80fd5b5f8083601f840112613ba757613ba6613996565b5b8235905067ffffffffffffffff811115613bc457613bc3613b8a565b5b602083019150836001820283011115613be057613bdf613b8e565b5b9250929050565b5f805f805f60808688031215613c0057613bff613528565b5b5f613c0d88828901613759565b9550506020613c1e88828901613759565b9450506040613c2f888289016136ac565b935050606086013567ffffffffffffffff811115613c5057613c4f61352c565b5b613c5c88828901613b92565b92509250509295509295909350565b5f8060408385031215613c8157613c80613528565b5b5f613c8e85828601613759565b9250506020613c9f85828601613759565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680613ced57607f821691505b602082108103613d0057613cff613ca9565b5b50919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f613d606024836135ed565b9150613d6b82613d06565b604082019050919050565b5f6020820190508181035f830152613d8d81613d54565b9050919050565b7f4552433732313a207472616e73666572206f6620746f6b656e207468617420695f8201527f73206e6f74206f776e6564000000000000000000000000000000000000000000602082015250565b5f613dee602b836135ed565b9150613df982613d94565b604082019050919050565b5f6020820190508181035f830152613e1b81613de2565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f613e598261368d565b9150613e648361368d565b9250828202613e728161368d565b91508282048414831517613e8957613e88613e22565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f613ec78261368d565b9150613ed28361368d565b925082613ee257613ee1613e90565b5b828204905092915050565b7f4e6f2045544820746f20776974686472617700000000000000000000000000005f82015250565b5f613f216012836135ed565b9150613f2c82613eed565b602082019050919050565b5f6020820190508181035f830152613f4e81613f15565b9050919050565b5f81905092915050565b50565b5f613f6d5f83613f55565b9150613f7882613f5f565b5f82019050919050565b5f613f8c82613f62565b9150819050919050565b7f5769746864726177616c206661696c65640000000000000000000000000000005f82015250565b5f613fca6011836135ed565b9150613fd582613f96565b602082019050919050565b5f6020820190508181035f830152613ff781613fbe565b9050919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261405a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261401f565b614064868361401f565b95508019841693508086168417925050509392505050565b5f819050919050565b5f61409f61409a6140958461368d565b61407c565b61368d565b9050919050565b5f819050919050565b6140b883614085565b6140cc6140c4826140a6565b84845461402b565b825550505050565b5f90565b6140e06140d4565b6140eb8184846140af565b505050565b5b8181101561410e576141035f826140d8565b6001810190506140f1565b5050565b601f8211156141535761412481613ffe565b61412d84614010565b8101602085101561413c578190505b61415061414885614010565b8301826140f0565b50505b505050565b5f82821c905092915050565b5f6141735f1984600802614158565b1980831691505092915050565b5f61418b8383614164565b9150826002028217905092915050565b6141a4826135e3565b67ffffffffffffffff8111156141bd576141bc61399e565b5b6141c78254613cd6565b6141d2828285614112565b5f60209050601f831160018114614203575f84156141f1578287015190505b6141fb8582614180565b865550614262565b601f19841661421186613ffe565b5f5b8281101561423857848901518255600182019150602085019450602081019050614213565b868310156142555784890151614251601f891682614164565b8355505b6001600288020188555050505b505050505050565b5f6142748261368d565b915061427f8361368d565b925082820190508082111561429757614296613e22565b5b92915050565b7f496e697469616c2061706172746d656e7420636f6d706c6578206c696d6974205f8201527f7265616368656400000000000000000000000000000000000000000000000000602082015250565b5f6142f76027836135ed565b91506143028261429d565b604082019050919050565b5f6020820190508181035f830152614324816142eb565b9050919050565b7f546f6b656e204944206f7574206f662072616e676500000000000000000000005f82015250565b5f61435f6015836135ed565b915061436a8261432b565b602082019050919050565b5f6020820190508181035f83015261438c81614353565b9050919050565b5f819050919050565b6143ad6143a88261368d565b614393565b82525050565b5f6143be828561439c565b6020820191506143ce828461439c565b6020820191508190509392505050565b5f6143e88261368d565b91506143f38361368d565b92508261440357614402613e90565b5b828206905092915050565b5f6060820190506144215f830186613843565b61442e6020830185613852565b61443b6040830184613852565b949350505050565b5f61444d8261368d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361447f5761447e613e22565b5b600182019050919050565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a655f8201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b5f6144e4602a836135ed565b91506144ef8261448a565b604082019050919050565b5f6020820190508181035f830152614511816144d8565b9050919050565b7f57686974656c697374206d696e74696e6720686173206e6f74207374617274655f8201527f6420796574000000000000000000000000000000000000000000000000000000602082015250565b5f6145726025836135ed565b915061457d82614518565b604082019050919050565b5f6020820190508181035f83015261459f81614566565b9050919050565b7f4e6f742077686974656c697374656400000000000000000000000000000000005f82015250565b5f6145da600f836135ed565b91506145e5826145a6565b602082019050919050565b5f6020820190508181035f830152614607816145ce565b9050919050565b7f496e76616c6964207175616e74697479000000000000000000000000000000005f82015250565b5f6146426010836135ed565b915061464d8261460e565b602082019050919050565b5f6020820190508181035f83015261466f81614636565b9050919050565b7f457863656564732077686974656c697374206d696e74206c696d6974000000005f82015250565b5f6146aa601c836135ed565b91506146b582614676565b602082019050919050565b5f6020820190508181035f8301526146d78161469e565b9050919050565b7f496e636f7272656374204554482076616c75652073656e7400000000000000005f82015250565b5f6147126018836135ed565b915061471d826146de565b602082019050919050565b5f6020820190508181035f83015261473f81614706565b9050919050565b7f5075626c6963206d696e74696e6720686173206e6f74207374617274656420795f8201527f6574000000000000000000000000000000000000000000000000000000000000602082015250565b5f6147a06022836135ed565b91506147ab82614746565b604082019050919050565b5f6020820190508181035f8301526147cd81614794565b9050919050565b7f5175616e74697479206d7573742062652067726561746572207468616e207a655f8201527f726f000000000000000000000000000000000000000000000000000000000000602082015250565b5f61482e6022836135ed565b9150614839826147d4565b604082019050919050565b5f6020820190508181035f83015261485b81614822565b9050919050565b7f416c72656164792077686974656c6973746564000000000000000000000000005f82015250565b5f6148966013836135ed565b91506148a182614862565b602082019050919050565b5f6020820190508181035f8301526148c38161488a565b9050919050565b5f81905092915050565b5f6148de826135e3565b6148e881856148ca565b93506148f88185602086016135fd565b80840191505092915050565b5f61490f82856148d4565b915061491b82846148d4565b91508190509392505050565b7f4552433732313a206e6f6e6578697374656e7420746f6b656e000000000000005f82015250565b5f61495b6019836135ed565b915061496682614927565b602082019050919050565b5f6020820190508181035f8301526149888161494f565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f20616464726573735f82015250565b5f6149c36020836135ed565b91506149ce8261498f565b602082019050919050565b5f6020820190508181035f8301526149f0816149b7565b9050919050565b614a0081613837565b8114614a0a575f80fd5b50565b5f81519050614a1b816149f7565b92915050565b5f81519050614a2f81613696565b92915050565b5f805f60608486031215614a4c57614a4b613528565b5b5f614a5986828701614a0d565b9350506020614a6a86828701614a21565b9250506040614a7b86828701614a21565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81549050614ac081613cd6565b9050919050565b5f819050815f5260205f209050919050565b818103614ae7575050614bbc565b614af082614ab2565b67ffffffffffffffff811115614b0957614b0861399e565b5b614b138254613cd6565b614b1e828285614112565b5f601f831160018114614b4b575f8415614b39578287015490505b614b438582614180565b865550614bb5565b601f198416614b5987614ac7565b9650614b6486613ffe565b5f5b82811015614b8b57848901548255600182019150600185019450602081019050614b66565b86831015614ba85784890154614ba4601f891682614164565b8355505b6001600288020188555050505b5050505050505b565b5f614bc88261368d565b9150614bd38361368d565b9250828203905081811115614beb57614bea613e22565b5b92915050565b5f60208284031215614c0657614c05613528565b5b5f614c1384828501614a21565b91505092915050565b5f81519050614c2a81613b22565b92915050565b5f60208284031215614c4557614c44613528565b5b5f614c5284828501614c1c565b91505092915050565b5f819050919050565b5f614c7e614c79614c7484614c5b565b61407c565b61368d565b9050919050565b614c8e81614c64565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b614cc68161370a565b82525050565b5f614cd78383614cbd565b60208301905092915050565b5f602082019050919050565b5f614cf982614c94565b614d038185614c9e565b9350614d0e83614cae565b805f5b83811015614d3e578151614d258882614ccc565b9750614d3083614ce3565b925050600181019050614d11565b5085935050505092915050565b5f60a082019050614d5e5f830188613852565b614d6b6020830187614c85565b8181036040830152614d7d8186614cef565b9050614d8c606083018561371b565b614d996080830184613852565b9695505050505050565b5f614dae828661439c565b602082019150614dbe828561439c565b602082019150614dce828461439c565b602082019150819050949350505050565b7f41706172746d656e7420436f6d706c657820746f6b656e204944206f7574206f5f8201527f662072616e676500000000000000000000000000000000000000000000000000602082015250565b5f614e396027836135ed565b9150614e4482614ddf565b604082019050919050565b5f6020820190508181035f830152614e6681614e2d565b9050919050565b7f4475706c657820746f6b656e204944206f7574206f662072616e6765000000005f82015250565b5f614ea1601c836135ed565b9150614eac82614e6d565b602082019050919050565b5f6020820190508181035f830152614ece81614e95565b9050919050565b7f53696e676c652046616d696c7920746f6b656e204944206f7574206f662072615f8201527f6e67650000000000000000000000000000000000000000000000000000000000602082015250565b5f614f2f6023836135ed565b9150614f3a82614ed5565b604082019050919050565b5f6020820190508181035f830152614f5c81614f23565b9050919050565b5f8154614f6f81613cd6565b614f7981866135ed565b9450600182165f8114614f935760018114614fa957614fdb565b60ff198316865281151560200286019350614fdb565b614fb285613ffe565b5f5b83811015614fd357815481890152600182019150602081019050614fb4565b808801955050505b50505092915050565b5f606082019050614ff75f830186613843565b81810360208301526150098185614f63565b90506150186040830184613852565b949350505050565b7f4552433732313a20617070726f766520746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61507a6023836135ed565b915061508582615020565b604082019050919050565b5f6020820190508181035f8301526150a78161506e565b9050919050565b5f81519050919050565b5f82825260208201905092915050565b5f6150d2826150ae565b6150dc81856150b8565b93506150ec8185602086016135fd565b6150f581613625565b840191505092915050565b5f6080820190506151135f83018761371b565b615120602083018661371b565b61512d6040830185613852565b818103606083015261513f81846150c8565b905095945050505050565b5f815190506151588161355b565b92915050565b5f6020828403121561517357615172613528565b5b5f6151808482850161514a565b91505092915050565b7f4552433732313a207472616e7366657220746f206e6f6e2045524337323152655f8201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b5f6151e36032836135ed565b91506151ee82615189565b604082019050919050565b5f6020820190508181035f830152615210816151d7565b9050919050565b7f4552433732313a20696e76616c696420617070726f76657200000000000000005f82015250565b5f61524b6018836135ed565b915061525682615217565b602082019050919050565b5f6020820190508181035f8301526152788161523f565b9050919050565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e65785f8201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b5f6152d9602c836135ed565b91506152e48261527f565b604082019050919050565b5f6020820190508181035f830152615306816152cd565b9050919050565b7f4552433732313a20696e73756666696369656e7420617070726f76616c0000005f82015250565b5f615341601d836135ed565b915061534c8261530d565b602082019050919050565b5f6020820190508181035f83015261536e81615335565b9050919050565b7f496e76616c6964207a6f6e6520696e64657800000000000000000000000000005f82015250565b5f6153a96012836135ed565b91506153b482615375565b602082019050919050565b5f6020820190508181035f8301526153d68161539d565b905091905056fea26469706673582212209d39c96372323b3e4fe0f483a9ce6f5006904530b3868299d1dffc8b34999a2364736f6c63430008140033000000000000000000000000d7f655e3376ce2d7a2b08ff01eb3b1023191a901000000000000000000000000d00ae08403b9bbb9124bb305c09058e32c39a48c000000000000000000000000dc689232f08e92a406deb427c4feb2614a2b4356000000000000000000000000307c02db53b1eb2a40cd0afa451546bb0114458b00000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000036697066733a2f2f516d61634b575655386d504d3847794b34353657395956526d46527457657533764745705352676f656932427a612f00000000000000000000