0x608060405234801561000f575f5ffd5b50600436106100f3575f3560e01c8063715018a611610095578063a457c2d711610064578063a457c2d714610275578063a9059cbb146102a5578063dd62ed3e146102d5578063f2fde38b14610305576100f3565b8063715018a614610211578063893d20e81461021b5780638da5cb5b1461023957806395d89b4114610257576100f3565b806323b872dd116100d157806323b872dd14610163578063313ce5671461019357806339509351146101b157806370a08231146101e1576100f3565b806306fdde03146100f7578063095ea7b31461011557806318160ddd14610145575b5f5ffd5b6100ff610321565b60405161010c9190611076565b60405180910390f35b61012f600480360381019061012a9190611127565b6103b1565b60405161013c919061117f565b60405180910390f35b61014d6103ce565b60405161015a91906111a7565b60405180910390f35b61017d600480360381019061017891906111c0565b6103d7565b60405161018a919061117f565b60405180910390f35b61019b6104ab565b6040516101a8919061122b565b60405180910390f35b6101cb60048036038101906101c69190611127565b6104c0565b6040516101d8919061117f565b60405180910390f35b6101fb60048036038101906101f69190611244565b61056e565b60405161020891906111a7565b60405180910390f35b6102196105b4565b005b610223610704565b604051610230919061127e565b60405180910390f35b610241610712565b60405161024e919061127e565b60405180910390f35b61025f610739565b60405161026c9190611076565b60405180910390f35b61028f600480360381019061028a9190611127565b6107c9565b60405161029c919061117f565b60405180910390f35b6102bf60048036038101906102ba9190611127565b610891565b6040516102cc919061117f565b60405180910390f35b6102ef60048036038101906102ea9190611297565b6108ae565b6040516102fc91906111a7565b60405180910390f35b61031f600480360381019061031a9190611244565b610930565b005b60606006805461033090611302565b80601f016020809104026020016040519081016040528092919081815260200182805461035c90611302565b80156103a75780601f1061037e576101008083540402835291602001916103a7565b820191905f5260205f20905b81548152906001019060200180831161038a57829003601f168201915b5050505050905090565b5f6103c46103bd6109d1565b84846109d8565b6001905092915050565b5f600354905090565b5f6103e3848484610b9b565b6104a0846103ef6109d1565b61049b8560405180606001604052806028815260200161175c6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104526109d1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610e1d9092919063ffffffff16565b6109d8565b600190509392505050565b5f60045f9054906101000a900460ff16905090565b5f6105646104cc6109d1565b8461055f8560025f6104dc6109d1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610e7f90919063ffffffff16565b6109d8565b6001905092915050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6105bc6109d1565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610649576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106409061137c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f61070d610712565b905090565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606005805461074890611302565b80601f016020809104026020016040519081016040528092919081815260200182805461077490611302565b80156107bf5780601f10610796576101008083540402835291602001916107bf565b820191905f5260205f20905b8154815290600101906020018083116107a257829003601f168201915b5050505050905090565b5f6108876107d56109d1565b84610882856040518060600160405280602581526020016117aa6025913960025f6107fe6109d1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610e1d9092919063ffffffff16565b6109d8565b6001905092915050565b5f6108a461089d6109d1565b8484610b9b565b6001905092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b6109386109d1565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109bc9061137c565b60405180910390fd5b6109ce81610edc565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610a46576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3d9061140a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ab4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aab90611498565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610b8e91906111a7565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610c09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0090611526565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6e906115b4565b60405180910390fd5b610ce1816040518060600160405280602681526020016117846026913960015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610e1d9092919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550610d728160015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610e7f90919063ffffffff16565b60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e1091906111a7565b60405180910390a3505050565b5f838311158290610e64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5b9190611076565b60405180910390fd5b505f8385610e7291906115ff565b9050809150509392505050565b5f5f8284610e8d9190611632565b905083811015610ed2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec9906116af565b60405180910390fd5b8091505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f4a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f419061173d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61104882611006565b6110528185611010565b9350611062818560208601611020565b61106b8161102e565b840191505092915050565b5f6020820190508181035f83015261108e818461103e565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6110c38261109a565b9050919050565b6110d3816110b9565b81146110dd575f5ffd5b50565b5f813590506110ee816110ca565b92915050565b5f819050919050565b611106816110f4565b8114611110575f5ffd5b50565b5f81359050611121816110fd565b92915050565b5f5f6040838503121561113d5761113c611096565b5b5f61114a858286016110e0565b925050602061115b85828601611113565b9150509250929050565b5f8115159050919050565b61117981611165565b82525050565b5f6020820190506111925f830184611170565b92915050565b6111a1816110f4565b82525050565b5f6020820190506111ba5f830184611198565b92915050565b5f5f5f606084860312156111d7576111d6611096565b5b5f6111e4868287016110e0565b93505060206111f5868287016110e0565b925050604061120686828701611113565b9150509250925092565b5f60ff82169050919050565b61122581611210565b82525050565b5f60208201905061123e5f83018461121c565b92915050565b5f6020828403121561125957611258611096565b5b5f611266848285016110e0565b91505092915050565b611278816110b9565b82525050565b5f6020820190506112915f83018461126f565b92915050565b5f5f604083850312156112ad576112ac611096565b5b5f6112ba858286016110e0565b92505060206112cb858286016110e0565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061131957607f821691505b60208210810361132c5761132b6112d5565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611366602083611010565b915061137182611332565b602082019050919050565b5f6020820190508181035f8301526113938161135a565b9050919050565b7f42455032303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6113f4602483611010565b91506113ff8261139a565b604082019050919050565b5f6020820190508181035f830152611421816113e8565b9050919050565b7f42455032303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611482602283611010565b915061148d82611428565b604082019050919050565b5f6020820190508181035f8301526114af81611476565b9050919050565b7f42455032303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611510602583611010565b915061151b826114b6565b604082019050919050565b5f6020820190508181035f83015261153d81611504565b9050919050565b7f42455032303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61159e602383611010565b91506115a982611544565b604082019050919050565b5f6020820190508181035f8301526115cb81611592565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611609826110f4565b9150611614836110f4565b925082820390508181111561162c5761162b6115d2565b5b92915050565b5f61163c826110f4565b9150611647836110f4565b925082820190508082111561165f5761165e6115d2565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f611699601b83611010565b91506116a482611665565b602082019050919050565b5f6020820190508181035f8301526116c68161168d565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f611727602683611010565b9150611732826116cd565b604082019050919050565b5f6020820190508181035f8301526117548161171b565b905091905056fe42455032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636542455032303a207472616e7366657220616d6f756e7420657863656564732062616c616e636542455032303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220cda4755a143f29247ba7162241c1226d968d0ed157b4738edb2fc1f6f75e512964736f6c634300081e0033
0x608060405234801561000f575f5ffd5b505f61001f61022460201b60201c565b9050805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506040518060400160405280600481526020017f4254464400000000000000000000000000000000000000000000000000000000815250600690816100ff9190610468565b506040518060400160405280600481526020017f4254464400000000000000000000000000000000000000000000000000000000815250600590816101449190610468565b50601260045f6101000a81548160ff021916908360ff1602179055506c022efe3ef7ffe6a928c800000060038190555060035460015f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503373ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6003546040516102179190610546565b60405180910390a361055f565b5f33905090565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806102a657607f821691505b6020821081036102b9576102b8610262565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f6008830261031b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826102e0565b61032586836102e0565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61036961036461035f8461033d565b610346565b61033d565b9050919050565b5f819050919050565b6103828361034f565b61039661038e82610370565b8484546102ec565b825550505050565b5f5f905090565b6103ad61039e565b6103b8818484610379565b505050565b5b818110156103db576103d05f826103a5565b6001810190506103be565b5050565b601f821115610420576103f1816102bf565b6103fa846102d1565b81016020851015610409578190505b61041d610415856102d1565b8301826103bd565b50505b505050565b5f82821c905092915050565b5f6104405f1984600802610425565b1980831691505092915050565b5f6104588383610431565b9150826002028217905092915050565b6104718261022b565b67ffffffffffffffff81111561048a57610489610235565b5b610494825461028f565b61049f8282856103df565b5f60209050601f8311600181146104d0575f84156104be578287015190505b6104c8858261044d565b86555061052f565b601f1984166104de866102bf565b5f5b82811015610505578489015182556001820191506020850194506020810190506104e0565b86831015610522578489015161051e601f891682610431565b8355505b6001600288020188555050505b505050505050565b6105408161033d565b82525050565b5f6020820190506105595f830184610537565b92915050565b6118048061056c5f395ff3fe608060405234801561000f575f5ffd5b50600436106100f3575f3560e01c8063715018a611610095578063a457c2d711610064578063a457c2d714610275578063a9059cbb146102a5578063dd62ed3e146102d5578063f2fde38b14610305576100f3565b8063715018a614610211578063893d20e81461021b5780638da5cb5b1461023957806395d89b4114610257576100f3565b806323b872dd116100d157806323b872dd14610163578063313ce5671461019357806339509351146101b157806370a08231146101e1576100f3565b806306fdde03146100f7578063095ea7b31461011557806318160ddd14610145575b5f5ffd5b6100ff610321565b60405161010c9190611076565b60405180910390f35b61012f600480360381019061012a9190611127565b6103b1565b60405161013c919061117f565b60405180910390f35b61014d6103ce565b60405161015a91906111a7565b60405180910390f35b61017d600480360381019061017891906111c0565b6103d7565b60405161018a919061117f565b60405180910390f35b61019b6104ab565b6040516101a8919061122b565b60405180910390f35b6101cb60048036038101906101c69190611127565b6104c0565b6040516101d8919061117f565b60405180910390f35b6101fb60048036038101906101f69190611244565b61056e565b60405161020891906111a7565b60405180910390f35b6102196105b4565b005b610223610704565b604051610230919061127e565b60405180910390f35b610241610712565b60405161024e919061127e565b60405180910390f35b61025f610739565b60405161026c9190611076565b60405180910390f35b61028f600480360381019061028a9190611127565b6107c9565b60405161029c919061117f565b60405180910390f35b6102bf60048036038101906102ba9190611127565b610891565b6040516102cc919061117f565b60405180910390f35b6102ef60048036038101906102ea9190611297565b6108ae565b6040516102fc91906111a7565b60405180910390f35b61031f600480360381019061031a9190611244565b610930565b005b60606006805461033090611302565b80601f016020809104026020016040519081016040528092919081815260200182805461035c90611302565b80156103a75780601f1061037e576101008083540402835291602001916103a7565b820191905f5260205f20905b81548152906001019060200180831161038a57829003601f168201915b5050505050905090565b5f6103c46103bd6109d1565b84846109d8565b6001905092915050565b5f600354905090565b5f6103e3848484610b9b565b6104a0846103ef6109d1565b61049b8560405180606001604052806028815260200161175c6028913960025f8b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104526109d1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610e1d9092919063ffffffff16565b6109d8565b600190509392505050565b5f60045f9054906101000a900460ff16905090565b5f6105646104cc6109d1565b8461055f8560025f6104dc6109d1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610e7f90919063ffffffff16565b6109d8565b6001905092915050565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6105bc6109d1565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610649576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106409061137c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f5f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f61070d610712565b905090565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606005805461074890611302565b80601f016020809104026020016040519081016040528092919081815260200182805461077490611302565b80156107bf5780601f10610796576101008083540402835291602001916107bf565b820191905f5260205f20905b8154815290600101906020018083116107a257829003601f168201915b5050505050905090565b5f6108876107d56109d1565b84610882856040518060600160405280602581526020016117aa6025913960025f6107fe6109d1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610e1d9092919063ffffffff16565b6109d8565b6001905092915050565b5f6108a461089d6109d1565b8484610b9b565b6001905092915050565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b6109386109d1565b73ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146109c5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109bc9061137c565b60405180910390fd5b6109ce81610edc565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610a46576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a3d9061140a565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ab4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aab90611498565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610b8e91906111a7565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610c09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0090611526565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610c77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c6e906115b4565b60405180910390fd5b610ce1816040518060600160405280602681526020016117846026913960015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610e1d9092919063ffffffff16565b60015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550610d728160015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054610e7f90919063ffffffff16565b60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610e1091906111a7565b60405180910390a3505050565b5f838311158290610e64576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5b9190611076565b60405180910390fd5b505f8385610e7291906115ff565b9050809150509392505050565b5f5f8284610e8d9190611632565b905083811015610ed2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec9906116af565b60405180910390fd5b8091505092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610f4a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f419061173d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff165f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3805f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61104882611006565b6110528185611010565b9350611062818560208601611020565b61106b8161102e565b840191505092915050565b5f6020820190508181035f83015261108e818461103e565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6110c38261109a565b9050919050565b6110d3816110b9565b81146110dd575f5ffd5b50565b5f813590506110ee816110ca565b92915050565b5f819050919050565b611106816110f4565b8114611110575f5ffd5b50565b5f81359050611121816110fd565b92915050565b5f5f6040838503121561113d5761113c611096565b5b5f61114a858286016110e0565b925050602061115b85828601611113565b9150509250929050565b5f8115159050919050565b61117981611165565b82525050565b5f6020820190506111925f830184611170565b92915050565b6111a1816110f4565b82525050565b5f6020820190506111ba5f830184611198565b92915050565b5f5f5f606084860312156111d7576111d6611096565b5b5f6111e4868287016110e0565b93505060206111f5868287016110e0565b925050604061120686828701611113565b9150509250925092565b5f60ff82169050919050565b61122581611210565b82525050565b5f60208201905061123e5f83018461121c565b92915050565b5f6020828403121561125957611258611096565b5b5f611266848285016110e0565b91505092915050565b611278816110b9565b82525050565b5f6020820190506112915f83018461126f565b92915050565b5f5f604083850312156112ad576112ac611096565b5b5f6112ba858286016110e0565b92505060206112cb858286016110e0565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061131957607f821691505b60208210810361132c5761132b6112d5565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611366602083611010565b915061137182611332565b602082019050919050565b5f6020820190508181035f8301526113938161135a565b9050919050565b7f42455032303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f6113f4602483611010565b91506113ff8261139a565b604082019050919050565b5f6020820190508181035f830152611421816113e8565b9050919050565b7f42455032303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611482602283611010565b915061148d82611428565b604082019050919050565b5f6020820190508181035f8301526114af81611476565b9050919050565b7f42455032303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611510602583611010565b915061151b826114b6565b604082019050919050565b5f6020820190508181035f83015261153d81611504565b9050919050565b7f42455032303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f61159e602383611010565b91506115a982611544565b604082019050919050565b5f6020820190508181035f8301526115cb81611592565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611609826110f4565b9150611614836110f4565b925082820390508181111561162c5761162b6115d2565b5b92915050565b5f61163c826110f4565b9150611647836110f4565b925082820190508082111561165f5761165e6115d2565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f7700000000005f82015250565b5f611699601b83611010565b91506116a482611665565b602082019050919050565b5f6020820190508181035f8301526116c68161168d565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f611727602683611010565b9150611732826116cd565b604082019050919050565b5f6020820190508181035f8301526117548161171b565b905091905056fe42455032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636542455032303a207472616e7366657220616d6f756e7420657863656564732062616c616e636542455032303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220cda4755a143f29247ba7162241c1226d968d0ed157b4738edb2fc1f6f75e512964736f6c634300081e0033