60806040525f60035573f19308f923582a6f7c465e5ce7a9dc1bec6665b160045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555034801562000068575f80fd5b5060405162000d9338038062000d9383398181016040528101906200008e91906200024b565b815f90816200009e919062000505565b508060019081620000b0919062000505565b506509184e72a0006002819055505050620005e9565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6200012782620000df565b810181811067ffffffffffffffff82111715620001495762000148620000ef565b5b80604052505050565b5f6200015d620000c6565b90506200016b82826200011c565b919050565b5f67ffffffffffffffff8211156200018d576200018c620000ef565b5b6200019882620000df565b9050602081019050919050565b5f5b83811015620001c4578082015181840152602081019050620001a7565b5f8484015250505050565b5f620001e5620001df8462000170565b62000152565b905082815260208101848484011115620002045762000203620000db565b5b62000211848285620001a5565b509392505050565b5f82601f83011262000230576200022f620000d7565b5b815162000242848260208601620001cf565b91505092915050565b5f8060408385031215620002645762000263620000cf565b5b5f83015167ffffffffffffffff811115620002845762000283620000d3565b5b620002928582860162000219565b925050602083015167ffffffffffffffff811115620002b657620002b5620000d3565b5b620002c48582860162000219565b9150509250929050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200031d57607f821691505b602082108103620003335762000332620002d8565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620003977fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200035a565b620003a386836200035a565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f620003ed620003e7620003e184620003bb565b620003c4565b620003bb565b9050919050565b5f819050919050565b6200040883620003cd565b620004206200041782620003f4565b84845462000366565b825550505050565b5f90565b6200043662000428565b62000443818484620003fd565b505050565b5b818110156200046a576200045e5f826200042c565b60018101905062000449565b5050565b601f821115620004b957620004838162000339565b6200048e846200034b565b810160208510156200049e578190505b620004b6620004ad856200034b565b83018262000448565b50505b505050565b5f82821c905092915050565b5f620004db5f1984600802620004be565b1980831691505092915050565b5f620004f58383620004ca565b9150826002028217905092915050565b6200051082620002ce565b67ffffffffffffffff8111156200052c576200052b620000ef565b5b62000538825462000305565b620005458282856200046e565b5f60209050601f8311600181146200057b575f841562000566578287015190505b620005728582620004e8565b865550620005e1565b601f1984166200058b8662000339565b5f5b82811015620005b4578489015182556001820191506020850194506020810190506200058d565b86831015620005d45784890151620005d0601f891682620004ca565b8355505b6001600288020188555050505b505050505050565b61079c80620005f75f395ff3fe608060405234801561000f575f80fd5b5060043610610060575f3560e01c806306fdde031461006457806318160ddd14610082578063313ce567146100a057806367220fd7146100be57806370a08231146100da57806395d89b411461010a575b5f80fd5b61006c610128565b60405161007991906103fd565b60405180910390f35b61008a6101b3565b6040516100979190610435565b60405180910390f35b6100a86101b9565b6040516100b59190610469565b60405180910390f35b6100d860048036038101906100d39190610657565b6101bd565b005b6100f460048036038101906100ef91906106b1565b610281565b6040516101019190610435565b60405180910390f35b6101126102e7565b60405161011f91906103fd565b60405180910390f35b5f805461013490610709565b80601f016020809104026020016040519081016040528092919081815260200182805461016090610709565b80156101ab5780601f10610182576101008083540402835291602001916101ab565b820191905f5260205f20905b81548152906001019060200180831161018e57829003601f168201915b505050505081565b60025481565b5f90565b806003819055505f5b825181101561027c578281815181106101e2576101e1610739565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1660045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516102679190610435565b60405180910390a380806001019150506101c6565b505050565b5f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146102de576003546102e0565b5f5b9050919050565b600180546102f490610709565b80601f016020809104026020016040519081016040528092919081815260200182805461032090610709565b801561036b5780601f106103425761010080835404028352916020019161036b565b820191905f5260205f20905b81548152906001019060200180831161034e57829003601f168201915b505050505081565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156103aa57808201518184015260208101905061038f565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6103cf82610373565b6103d9818561037d565b93506103e981856020860161038d565b6103f2816103b5565b840191505092915050565b5f6020820190508181035f83015261041581846103c5565b905092915050565b5f819050919050565b61042f8161041d565b82525050565b5f6020820190506104485f830184610426565b92915050565b5f60ff82169050919050565b6104638161044e565b82525050565b5f60208201905061047c5f83018461045a565b92915050565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6104cd826103b5565b810181811067ffffffffffffffff821117156104ec576104eb610497565b5b80604052505050565b5f6104fe610482565b905061050a82826104c4565b919050565b5f67ffffffffffffffff82111561052957610528610497565b5b602082029050602081019050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6105678261053e565b9050919050565b6105778161055d565b8114610581575f80fd5b50565b5f813590506105928161056e565b92915050565b5f6105aa6105a58461050f565b6104f5565b905080838252602082019050602084028301858111156105cd576105cc61053a565b5b835b818110156105f657806105e28882610584565b8452602084019350506020810190506105cf565b5050509392505050565b5f82601f83011261061457610613610493565b5b8135610624848260208601610598565b91505092915050565b6106368161041d565b8114610640575f80fd5b50565b5f813590506106518161062d565b92915050565b5f806040838503121561066d5761066c61048b565b5b5f83013567ffffffffffffffff81111561068a5761068961048f565b5b61069685828601610600565b92505060206106a785828601610643565b9150509250929050565b5f602082840312156106c6576106c561048b565b5b5f6106d384828501610584565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061072057607f821691505b602082108103610733576107326106dc565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfea264697066735822122020bf1f35794b49755f7054ff8f4585ba6175fcc38da2f0e9d56e352272784a0664736f6c634300081800330000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000102120746974616e7864726f702e636f6d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002e436c61696d2024544954414e58207265776172642061742068747470733a2f2f746974616e7864726f702e636f6d000000000000000000000000000000000000