0x60806040523480156200001157600080fd5b506040518060400160405280600681526020017f506f7461746f0000000000000000000000000000000000000000000000000000815250600090816200005891906200036f565b506040518060400160405280600381526020017f5450500000000000000000000000000000000000000000000000000000000000815250600190816200009f91906200036f565b5061c73860028190555061c738600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000456565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200017757607f821691505b6020821081036200018d576200018c6200012f565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620001f77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620001b8565b620002038683620001b8565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620002506200024a62000244846200021b565b62000225565b6200021b565b9050919050565b6000819050919050565b6200026c836200022f565b620002846200027b8262000257565b848454620001c5565b825550505050565b600090565b6200029b6200028c565b620002a881848462000261565b505050565b5b81811015620002d057620002c460008262000291565b600181019050620002ae565b5050565b601f8211156200031f57620002e98162000193565b620002f484620001a8565b8101602085101562000304578190505b6200031c6200031385620001a8565b830182620002ad565b50505b505050565b600082821c905092915050565b6000620003446000198460080262000324565b1980831691505092915050565b60006200035f838362000331565b9150826002028217905092915050565b6200037a82620000f5565b67ffffffffffffffff81111562000396576200039562000100565b5b620003a282546200015e565b620003af828285620002d4565b600060209050601f831160018114620003e75760008415620003d2578287015190505b620003de858262000351565b8655506200044e565b601f198416620003f78662000193565b60005b828110156200042157848901518255600182019150602085019450602081019050620003fa565b868310156200044157848901516200043d601f89168262000331565b8355505b6001600288020188555050505b505050505050565b61082480620004666000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806306fdde031461006757806318160ddd1461008557806327e235e3146100a357806370a08231146100d357806395d89b4114610103578063a9059cbb14610121575b600080fd5b61006f610151565b60405161007c9190610503565b60405180910390f35b61008d6101df565b60405161009a919061053e565b60405180910390f35b6100bd60048036038101906100b891906105bc565b6101e5565b6040516100ca919061053e565b60405180910390f35b6100ed60048036038101906100e891906105bc565b6101fd565b6040516100fa919061053e565b60405180910390f35b61010b610246565b6040516101189190610503565b60405180910390f35b61013b60048036038101906101369190610615565b6102d4565b6040516101489190610670565b60405180910390f35b6000805461015e906106ba565b80601f016020809104026020016040519081016040528092919081815260200182805461018a906106ba565b80156101d75780601f106101ac576101008083540402835291602001916101d7565b820191906000526020600020905b8154815290600101906020018083116101ba57829003601f168201915b505050505081565b60025481565b60036020528060005260406000206000915090505481565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60018054610253906106ba565b80601f016020809104026020016040519081016040528092919081815260200182805461027f906106ba565b80156102cc5780601f106102a1576101008083540402835291602001916102cc565b820191906000526020600020905b8154815290600101906020018083116102af57829003601f168201915b505050505081565b600081600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610358576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161034f90610737565b60405180910390fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546103a79190610786565b9250508190555081600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546103fd91906107ba565b925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610461919061053e565b60405180910390a36001905092915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156104ad578082015181840152602081019050610492565b60008484015250505050565b6000601f19601f8301169050919050565b60006104d582610473565b6104df818561047e565b93506104ef81856020860161048f565b6104f8816104b9565b840191505092915050565b6000602082019050818103600083015261051d81846104ca565b905092915050565b6000819050919050565b61053881610525565b82525050565b6000602082019050610553600083018461052f565b92915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006105898261055e565b9050919050565b6105998161057e565b81146105a457600080fd5b50565b6000813590506105b681610590565b92915050565b6000602082840312156105d2576105d1610559565b5b60006105e0848285016105a7565b91505092915050565b6105f281610525565b81146105fd57600080fd5b50565b60008135905061060f816105e9565b92915050565b6000806040838503121561062c5761062b610559565b5b600061063a858286016105a7565b925050602061064b85828601610600565b9150509250929050565b60008115159050919050565b61066a81610655565b82525050565b60006020820190506106856000830184610661565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806106d257607f821691505b6020821081036106e5576106e461068b565b5b50919050565b7f496e73756666696369656e742062616c616e6365000000000000000000000000600082015250565b600061072160148361047e565b915061072c826106eb565b602082019050919050565b6000602082019050818103600083015261075081610714565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061079182610525565b915061079c83610525565b92508282039050818111156107b4576107b3610757565b5b92915050565b60006107c582610525565b91506107d083610525565b92508282019050808211156107e8576107e7610757565b5b9291505056fea2646970667358221220604f020596e0fe6bacff1116c9f7c108dfd8107955ea9b69e2f838845369f55a64736f6c63430008120033