0x60806040526004361061001d575f3560e01c806382ee274e14610021575b5f80fd5b61003b60048036038101906100369190610592565b61003d565b005b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146100ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100c1906106a9565b60405180910390fd5b5f600189036100fc5760015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050610121565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505b813411156101c0578073ffffffffffffffffffffffffffffffffffffffff16637ff36ab5833461015191906106f4565b8988888b896040518763ffffffff1660e01b8152600401610176959493929190610801565b5f6040518083038185885af1158015610191573d5f803e3d5ffd5b50505050506040513d5f823e3d601f19601f820116820180604052508101906101ba91906109a9565b5061027b565b6101f385855f8181106101d6576101d56109f0565b5b90506020020160208101906101eb9190610a1d565b33308b6102d3565b8073ffffffffffffffffffffffffffffffffffffffff166338ed1739898988888b896040518763ffffffff1660e01b815260040161023696959493929190610a48565b5f604051808303815f875af1158015610251573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f8201168201806040525081019061027991906109a9565b505b5f8211156102c8574173ffffffffffffffffffffffffffffffffffffffff166108fc8390811502906040515f60405180830381858888f193505050501580156102c6573d5f803e3d5ffd5b505b505050505050505050565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610360576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610357906106a9565b60405180910390fd5b5f808573ffffffffffffffffffffffffffffffffffffffff166323b872dd86868660405160240161039393929190610aa2565b6040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516103e19190610b29565b5f604051808303815f865af19150503d805f811461041a576040519150601f19603f3d011682016040523d82523d5f602084013e61041f565b606091505b509150915081801561044c57505f8151148061044b57508080602001905181019061044a9190610b74565b5b5b61048b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161048290610be9565b60405180910390fd5b505050505050565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6104b6816104a4565b81146104c0575f80fd5b50565b5f813590506104d1816104ad565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610500826104d7565b9050919050565b610510816104f6565b811461051a575f80fd5b50565b5f8135905061052b81610507565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261055257610551610531565b5b8235905067ffffffffffffffff81111561056f5761056e610535565b5b60208301915083602082028301111561058b5761058a610539565b5b9250929050565b5f805f805f805f8060e0898b0312156105ae576105ad61049c565b5b5f6105bb8b828c016104c3565b98505060206105cc8b828c016104c3565b97505060406105dd8b828c016104c3565b96505060606105ee8b828c0161051d565b955050608089013567ffffffffffffffff81111561060f5761060e6104a0565b5b61061b8b828c0161053d565b945094505060a061062e8b828c016104c3565b92505060c061063f8b828c016104c3565b9150509295985092959890939650565b5f82825260208201905092915050565b7f796f75206172656e74206f776e65722c206675636b20750000000000000000005f82015250565b5f61069360178361064f565b915061069e8261065f565b602082019050919050565b5f6020820190508181035f8301526106c081610687565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6106fe826104a4565b9150610709836104a4565b9250828203905081811115610721576107206106c7565b5b92915050565b610730816104a4565b82525050565b5f82825260208201905092915050565b5f819050919050565b610758816104f6565b82525050565b5f610769838361074f565b60208301905092915050565b5f610783602084018461051d565b905092915050565b5f602082019050919050565b5f6107a28385610736565b93506107ad82610746565b805f5b858110156107e5576107c28284610775565b6107cc888261075e565b97506107d78361078b565b9250506001810190506107b0565b5085925050509392505050565b6107fb816104f6565b82525050565b5f6080820190506108145f830188610727565b8181036020830152610827818688610797565b905061083660408301856107f2565b6108436060830184610727565b9695505050505050565b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6108938261084d565b810181811067ffffffffffffffff821117156108b2576108b161085d565b5b80604052505050565b5f6108c4610493565b90506108d0828261088a565b919050565b5f67ffffffffffffffff8211156108ef576108ee61085d565b5b602082029050602081019050919050565b5f8151905061090e816104ad565b92915050565b5f610926610921846108d5565b6108bb565b9050808382526020820190506020840283018581111561094957610948610539565b5b835b81811015610972578061095e8882610900565b84526020840193505060208101905061094b565b5050509392505050565b5f82601f8301126109905761098f610531565b5b81516109a0848260208601610914565b91505092915050565b5f602082840312156109be576109bd61049c565b5b5f82015167ffffffffffffffff8111156109db576109da6104a0565b5b6109e78482850161097c565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215610a3257610a3161049c565b5b5f610a3f8482850161051d565b91505092915050565b5f60a082019050610a5b5f830189610727565b610a686020830188610727565b8181036040830152610a7b818688610797565b9050610a8a60608301856107f2565b610a976080830184610727565b979650505050505050565b5f606082019050610ab55f8301866107f2565b610ac260208301856107f2565b610acf6040830184610727565b949350505050565b5f81519050919050565b5f81905092915050565b8281835e5f83830152505050565b5f610b0382610ad7565b610b0d8185610ae1565b9350610b1d818560208601610aeb565b80840191505092915050565b5f610b348284610af9565b915081905092915050565b5f8115159050919050565b610b5381610b3f565b8114610b5d575f80fd5b50565b5f81519050610b6e81610b4a565b92915050565b5f60208284031215610b8957610b8861049c565b5b5f610b9684828501610b60565b91505092915050565b7f6675636b20646520706f6c6963650000000000000000000000000000000000005f82015250565b5f610bd3600e8361064f565b9150610bde82610b9f565b602082019050919050565b5f6020820190508181035f830152610c0081610bc7565b905091905056fea26469706673582212203226ff24e230c4e5e12ca26ac1361620104b0a15110c9b6843157a9c8cd1b06b64736f6c634300081a0033
0x6080604052737a250d5630b4cf539739df2c5dacb4c659f2488d60015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073d9e1ce17f2641f24ae83637ab66a2cca9c378b9f60025f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503480156100b7575f80fd5b50335f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610c3d806101045f395ff3fe60806040526004361061001d575f3560e01c806382ee274e14610021575b5f80fd5b61003b60048036038101906100369190610592565b61003d565b005b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146100ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016100c1906106a9565b60405180910390fd5b5f600189036100fc5760015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050610121565b60025f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505b813411156101c0578073ffffffffffffffffffffffffffffffffffffffff16637ff36ab5833461015191906106f4565b8988888b896040518763ffffffff1660e01b8152600401610176959493929190610801565b5f6040518083038185885af1158015610191573d5f803e3d5ffd5b50505050506040513d5f823e3d601f19601f820116820180604052508101906101ba91906109a9565b5061027b565b6101f385855f8181106101d6576101d56109f0565b5b90506020020160208101906101eb9190610a1d565b33308b6102d3565b8073ffffffffffffffffffffffffffffffffffffffff166338ed1739898988888b896040518763ffffffff1660e01b815260040161023696959493929190610a48565b5f604051808303815f875af1158015610251573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f8201168201806040525081019061027991906109a9565b505b5f8211156102c8574173ffffffffffffffffffffffffffffffffffffffff166108fc8390811502906040515f60405180830381858888f193505050501580156102c6573d5f803e3d5ffd5b505b505050505050505050565b5f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610360576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610357906106a9565b60405180910390fd5b5f808573ffffffffffffffffffffffffffffffffffffffff166323b872dd86868660405160240161039393929190610aa2565b6040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516103e19190610b29565b5f604051808303815f865af19150503d805f811461041a576040519150601f19603f3d011682016040523d82523d5f602084013e61041f565b606091505b509150915081801561044c57505f8151148061044b57508080602001905181019061044a9190610b74565b5b5b61048b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161048290610be9565b60405180910390fd5b505050505050565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b6104b6816104a4565b81146104c0575f80fd5b50565b5f813590506104d1816104ad565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610500826104d7565b9050919050565b610510816104f6565b811461051a575f80fd5b50565b5f8135905061052b81610507565b92915050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f84011261055257610551610531565b5b8235905067ffffffffffffffff81111561056f5761056e610535565b5b60208301915083602082028301111561058b5761058a610539565b5b9250929050565b5f805f805f805f8060e0898b0312156105ae576105ad61049c565b5b5f6105bb8b828c016104c3565b98505060206105cc8b828c016104c3565b97505060406105dd8b828c016104c3565b96505060606105ee8b828c0161051d565b955050608089013567ffffffffffffffff81111561060f5761060e6104a0565b5b61061b8b828c0161053d565b945094505060a061062e8b828c016104c3565b92505060c061063f8b828c016104c3565b9150509295985092959890939650565b5f82825260208201905092915050565b7f796f75206172656e74206f776e65722c206675636b20750000000000000000005f82015250565b5f61069360178361064f565b915061069e8261065f565b602082019050919050565b5f6020820190508181035f8301526106c081610687565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6106fe826104a4565b9150610709836104a4565b9250828203905081811115610721576107206106c7565b5b92915050565b610730816104a4565b82525050565b5f82825260208201905092915050565b5f819050919050565b610758816104f6565b82525050565b5f610769838361074f565b60208301905092915050565b5f610783602084018461051d565b905092915050565b5f602082019050919050565b5f6107a28385610736565b93506107ad82610746565b805f5b858110156107e5576107c28284610775565b6107cc888261075e565b97506107d78361078b565b9250506001810190506107b0565b5085925050509392505050565b6107fb816104f6565b82525050565b5f6080820190506108145f830188610727565b8181036020830152610827818688610797565b905061083660408301856107f2565b6108436060830184610727565b9695505050505050565b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6108938261084d565b810181811067ffffffffffffffff821117156108b2576108b161085d565b5b80604052505050565b5f6108c4610493565b90506108d0828261088a565b919050565b5f67ffffffffffffffff8211156108ef576108ee61085d565b5b602082029050602081019050919050565b5f8151905061090e816104ad565b92915050565b5f610926610921846108d5565b6108bb565b9050808382526020820190506020840283018581111561094957610948610539565b5b835b81811015610972578061095e8882610900565b84526020840193505060208101905061094b565b5050509392505050565b5f82601f8301126109905761098f610531565b5b81516109a0848260208601610914565b91505092915050565b5f602082840312156109be576109bd61049c565b5b5f82015167ffffffffffffffff8111156109db576109da6104a0565b5b6109e78482850161097c565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215610a3257610a3161049c565b5b5f610a3f8482850161051d565b91505092915050565b5f60a082019050610a5b5f830189610727565b610a686020830188610727565b8181036040830152610a7b818688610797565b9050610a8a60608301856107f2565b610a976080830184610727565b979650505050505050565b5f606082019050610ab55f8301866107f2565b610ac260208301856107f2565b610acf6040830184610727565b949350505050565b5f81519050919050565b5f81905092915050565b8281835e5f83830152505050565b5f610b0382610ad7565b610b0d8185610ae1565b9350610b1d818560208601610aeb565b80840191505092915050565b5f610b348284610af9565b915081905092915050565b5f8115159050919050565b610b5381610b3f565b8114610b5d575f80fd5b50565b5f81519050610b6e81610b4a565b92915050565b5f60208284031215610b8957610b8861049c565b5b5f610b9684828501610b60565b91505092915050565b7f6675636b20646520706f6c6963650000000000000000000000000000000000005f82015250565b5f610bd3600e8361064f565b9150610bde82610b9f565b602082019050919050565b5f6020820190508181035f830152610c0081610bc7565b905091905056fea26469706673582212203226ff24e230c4e5e12ca26ac1361620104b0a15110c9b6843157a9c8cd1b06b64736f6c634300081a0033