60806040526ec097ce7bc90715b34b9f10000000006000556040518060400160405280600581526020017f4254432e62000000000000000000000000000000000000000000000000000000815250600190805190602001906100629291906100dd565b506040518060400160405280600781526020017f426974636f696e00000000000000000000000000000000000000000000000000815250600290805190602001906100ae9291906100dd565b506012600360006101000a81548160ff021916908360ff1602179055503480156100d757600080fd5b506101e1565b8280546100e990610180565b90600052602060002090601f01602090048101928261010b5760008555610152565b82601f1061012457805160ff1916838001178555610152565b82800160010185558215610152579182015b82811115610151578251825591602001919060010190610136565b5b50905061015f9190610163565b5090565b5b8082111561017c576000816000905550600101610164565b5090565b6000600282049050600182168061019857607f821691505b602082108114156101ac576101ab6101b2565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b610577806101f06000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806306fdde031461005c57806318160ddd1461007a57806323b872dd14610098578063313ce567146100c857806395d89b41146100e6575b600080fd5b610064610104565b60405161007191906103a5565b60405180910390f35b610082610192565b60405161008f91906103c7565b60405180910390f35b6100b260048036038101906100ad91906102d5565b610198565b6040516100bf919061038a565b60405180910390f35b6100d061020a565b6040516100dd91906103e2565b60405180910390f35b6100ee61021d565b6040516100fb91906103a5565b60405180910390f35b60028054610111906104a1565b80601f016020809104026020016040519081016040528092919081815260200182805461013d906104a1565b801561018a5780601f1061015f5761010080835404028352916020019161018a565b820191906000526020600020905b81548152906001019060200180831161016d57829003601f168201915b505050505081565b60005481565b60008273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516101f791906103c7565b60405180910390a3600190509392505050565b600360009054906101000a900460ff1681565b6001805461022a906104a1565b80601f0160208091040260200160405190810160405280929190818152602001828054610256906104a1565b80156102a35780601f10610278576101008083540402835291602001916102a3565b820191906000526020600020905b81548152906001019060200180831161028657829003601f168201915b505050505081565b6000813590506102ba81610513565b92915050565b6000813590506102cf8161052a565b92915050565b6000806000606084860312156102ea57600080fd5b60006102f8868287016102ab565b9350506020610309868287016102ab565b925050604061031a868287016102c0565b9150509250925092565b61032d8161042b565b82525050565b600061033e826103fd565b6103488185610408565b935061035881856020860161046e565b61036181610502565b840191505092915050565b61037581610457565b82525050565b61038481610461565b82525050565b600060208201905061039f6000830184610324565b92915050565b600060208201905081810360008301526103bf8184610333565b905092915050565b60006020820190506103dc600083018461036c565b92915050565b60006020820190506103f7600083018461037b565b92915050565b600081519050919050565b600082825260208201905092915050565b600061042482610437565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b8381101561048c578082015181840152602081019050610471565b8381111561049b576000848401525b50505050565b600060028204905060018216806104b957607f821691505b602082108114156104cd576104cc6104d3565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000601f19601f8301169050919050565b61051c81610419565b811461052757600080fd5b50565b61053381610457565b811461053e57600080fd5b5056fea264697066735822122075a8ca74cf42d1c47b919b262915d04e45cb0ca6fb48e9cf42522401fc00a9a764736f6c63430008000033