608060405234801561001057600080fd5b50612da8806100206000396000f3fe608060405234801561001057600080fd5b50600436106101375760003560e01c8063715018a6116100b85780638da5cb5b1161007c5780638da5cb5b1461033057806395d89b411461034e578063a9059cbb1461036c578063d505accf1461039c578063dd62ed3e146103b8578063f2fde38b146103e857610137565b8063715018a61461029a578063747b8a1c146102a457806379cc6790146102c05780637ecebe00146102dc57806384b0196e1461030c57610137565b80633644e515116100ff5780633644e515146101f657806340c10f191461021457806342966c6814610230578063685ba4181461024c57806370a082311461026a57610137565b806306fdde031461013c578063095ea7b31461015a57806318160ddd1461018a57806323b872dd146101a8578063313ce567146101d8575b600080fd5b610144610404565b6040516101519190611fbf565b60405180910390f35b610174600480360381019061016f9190612089565b6104a5565b60405161018191906120e4565b60405180910390f35b6101926104c8565b60405161019f919061210e565b60405180910390f35b6101c260048036038101906101bd9190612129565b6104e0565b6040516101cf91906120e4565b60405180910390f35b6101e061050f565b6040516101ed9190612198565b60405180910390f35b6101fe610518565b60405161020b91906121cc565b60405180910390f35b61022e60048036038101906102299190612089565b610527565b005b61024a600480360381019061024591906121e7565b61053d565b005b610254610551565b6040516102619190612273565b60405180910390f35b610284600480360381019061027f919061228e565b610575565b604051610291919061210e565b60405180910390f35b6102a26105cc565b005b6102be60048036038101906102b991906123f0565b6105e0565b005b6102da60048036038101906102d59190612089565b61083e565b005b6102f660048036038101906102f1919061228e565b61085e565b604051610303919061210e565b60405180910390f35b610314610870565b60405161032797969594939291906125ab565b60405180910390f35b610338610982565b604051610345919061262f565b60405180910390f35b6103566109ba565b6040516103639190611fbf565b60405180910390f35b61038660048036038101906103819190612089565b610a5b565b60405161039391906120e4565b60405180910390f35b6103b660048036038101906103b191906126a2565b610a7e565b005b6103d260048036038101906103cd9190612744565b610bc6565b6040516103df919061210e565b60405180910390f35b61040260048036038101906103fd919061228e565b610c5b565b005b60606000610410610ce1565b9050806003018054610421906127b3565b80601f016020809104026020016040519081016040528092919081815260200182805461044d906127b3565b801561049a5780601f1061046f5761010080835404028352916020019161049a565b820191906000526020600020905b81548152906001019060200180831161047d57829003601f168201915b505050505091505090565b6000806104b0610d09565b90506104bd818585610d11565b600191505092915050565b6000806104d3610ce1565b9050806002015491505090565b6000806104eb610d09565b90506104f8858285610d23565b610503858585610db7565b60019150509392505050565b60006012905090565b6000610522610eab565b905090565b61052f610eba565b6105398282610f41565b5050565b61054e610548610d09565b82610fc3565b50565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080610580610ce1565b90508060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054915050919050565b6105d4610eba565b6105de6000611045565b565b60006105ea61111c565b905060008160000160089054906101000a900460ff1615905060008260000160009054906101000a900467ffffffffffffffff1690506000808267ffffffffffffffff161480156106385750825b9050600060018367ffffffffffffffff1614801561066d575060003073ffffffffffffffffffffffffffffffffffffffff163b145b90508115801561067b575080155b156106b2576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60018560000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555083156107025760018560000160086101000a81548160ff0219169083151502179055505b600073ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff1603610768576040517fe4818e8700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107728989611144565b61077a61115a565b6107838a611164565b61078c89611178565b856000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506107d68a88610f41565b83156108325760008560000160086101000a81548160ff0219169083151502179055507fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d260016040516108299190612833565b60405180910390a15b50505050505050505050565b6108508261084a610d09565b83610d23565b61085a8282610fc3565b5050565b6000610869826111c2565b9050919050565b6000606080600080600060606000610886611219565b90506000801b81600001541480156108a457506000801b8160010154145b6108e3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108da9061289a565b60405180910390fd5b6108eb611241565b6108f36112e2565b46306000801b600067ffffffffffffffff811115610914576109136122c5565b5b6040519080825280602002602001820160405280156109425781602001602082028036833780820191505090505b507f0f0000000000000000000000000000000000000000000000000000000000000095949392919097509750975097509750975097505090919293949596565b60008061098d611383565b90508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1691505090565b606060006109c6610ce1565b90508060040180546109d7906127b3565b80601f0160208091040260200160405190810160405280929190818152602001828054610a03906127b3565b8015610a505780601f10610a2557610100808354040283529160200191610a50565b820191906000526020600020905b815481529060010190602001808311610a3357829003601f168201915b505050505091505090565b600080610a66610d09565b9050610a73818585610db7565b600191505092915050565b83421115610ac357836040517f62791302000000000000000000000000000000000000000000000000000000008152600401610aba919061210e565b60405180910390fd5b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888610af28c6113ab565b89604051602001610b08969594939291906128ba565b6040516020818303038152906040528051906020012090506000610b2b82611410565b90506000610b3b8287878761142a565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610baf57808a6040517f4b800e46000000000000000000000000000000000000000000000000000000008152600401610ba692919061291b565b60405180910390fd5b610bba8a8a8a610d11565b50505050505050505050565b600080610bd1610ce1565b90508060010160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205491505092915050565b610c63610eba565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610cd55760006040517f1e4fbdf7000000000000000000000000000000000000000000000000000000008152600401610ccc919061262f565b60405180910390fd5b610cde81611045565b50565b60007f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00905090565b600033905090565b610d1e838383600161145a565b505050565b6000610d2f8484610bc6565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610db15781811015610da1578281836040517ffb8f41b2000000000000000000000000000000000000000000000000000000008152600401610d9893929190612944565b60405180910390fd5b610db08484848403600061145a565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610e295760006040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600401610e20919061262f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e9b5760006040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610e92919061262f565b60405180910390fd5b610ea6838383611640565b505050565b6000610eb561175b565b905090565b610ec2610d09565b73ffffffffffffffffffffffffffffffffffffffff16610ee0610982565b73ffffffffffffffffffffffffffffffffffffffff1614610f3f57610f03610d09565b6040517f118cdaa7000000000000000000000000000000000000000000000000000000008152600401610f36919061262f565b60405180910390fd5b565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610fb35760006040517fec442f05000000000000000000000000000000000000000000000000000000008152600401610faa919061262f565b60405180910390fd5b610fbf60008383611640565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110355760006040517f96c6fd1e00000000000000000000000000000000000000000000000000000000815260040161102c919061262f565b60405180910390fd5b61104182600083611640565b5050565b600061104f611383565b905060008160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050828260000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3505050565b60007ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00905090565b61114c6117bf565b61115682826117ff565b5050565b6111626117bf565b565b61116c6117bf565b6111758161183c565b50565b6111806117bf565b6111bf816040518060400160405280600181526020017f31000000000000000000000000000000000000000000000000000000000000008152506118c2565b50565b6000806111cd611917565b90508060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054915050919050565b60007fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d100905090565b6060600061124d611219565b905080600201805461125e906127b3565b80601f016020809104026020016040519081016040528092919081815260200182805461128a906127b3565b80156112d75780601f106112ac576101008083540402835291602001916112d7565b820191906000526020600020905b8154815290600101906020018083116112ba57829003601f168201915b505050505091505090565b606060006112ee611219565b90508060030180546112ff906127b3565b80601f016020809104026020016040519081016040528092919081815260200182805461132b906127b3565b80156113785780601f1061134d57610100808354040283529160200191611378565b820191906000526020600020905b81548152906001019060200180831161135b57829003601f168201915b505050505091505090565b60007f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300905090565b6000806113b6611917565b90508060000160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919060010191905055915050919050565b600061142361141d610eab565b8361193f565b9050919050565b60008060008061143c88888888611980565b92509250925061144c8282611a74565b829350505050949350505050565b6000611464610ce1565b9050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036114d85760006040517fe602df050000000000000000000000000000000000000000000000000000000081526004016114cf919061262f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff160361154a5760006040517f94280d62000000000000000000000000000000000000000000000000000000008152600401611541919061262f565b60405180910390fd5b828160010160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508115611639578373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92585604051611630919061210e565b60405180910390a35b5050505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015611714575060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637c563611836040518263ffffffff1660e01b81526004016116d1919061262f565b602060405180830381865afa1580156116ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061171291906129a7565b155b1561174b576040517f7f9a487100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611756838383611bd8565b505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f611786611e17565b61178e611e93565b46306040516020016117a49594939291906129d4565b60405160208183030381529060405280519060200120905090565b6117c7611f0f565b6117fd576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b565b6118076117bf565b6000611811610ce1565b9050828160030190816118249190612bc9565b50818160040190816118369190612bc9565b50505050565b6118446117bf565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036118b65760006040517f1e4fbdf70000000000000000000000000000000000000000000000000000000081526004016118ad919061262f565b60405180910390fd5b6118bf81611045565b50565b6118ca6117bf565b60006118d4611219565b9050828160020190816118e79190612bc9565b50818160030190816118f99190612bc9565b506000801b81600001819055506000801b8160010181905550505050565b60007f5ab42ced628888259c08ac98db1eb0cf702fc1501344311d8b100cd1bfe4bb00905090565b60006040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b60008060007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08460001c11156119c0576000600385925092509250611a6a565b6000600188888888604051600081526020016040526040516119e59493929190612c9b565b6020604051602081039080840390855afa158015611a07573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611a5b57600060016000801b93509350935050611a6a565b8060008060001b935093509350505b9450945094915050565b60006003811115611a8857611a87612ce0565b5b826003811115611a9b57611a9a612ce0565b5b0315611bd45760016003811115611ab557611ab4612ce0565b5b826003811115611ac857611ac7612ce0565b5b03611aff576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60026003811115611b1357611b12612ce0565b5b826003811115611b2657611b25612ce0565b5b03611b6b578060001c6040517ffce698f7000000000000000000000000000000000000000000000000000000008152600401611b62919061210e565b60405180910390fd5b600380811115611b7e57611b7d612ce0565b5b826003811115611b9157611b90612ce0565b5b03611bd357806040517fd78bce0c000000000000000000000000000000000000000000000000000000008152600401611bca91906121cc565b60405180910390fd5b5b5050565b6000611be2610ce1565b9050600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611c385781816002016000828254611c2c9190612d3e565b92505081905550611d11565b60008160000160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015611cc7578481846040517fe450d38c000000000000000000000000000000000000000000000000000000008152600401611cbe93929190612944565b60405180910390fd5b8281038260000160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611d5c57818160020160008282540392505081905550611dac565b818160000160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055505b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611e09919061210e565b60405180910390a350505050565b600080611e22611219565b90506000611e2e611241565b9050600081511115611e4b57808051906020012092505050611e90565b6000826000015490506000801b8114611e6957809350505050611e90565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47093505050505b90565b600080611e9e611219565b90506000611eaa6112e2565b9050600081511115611ec757808051906020012092505050611f0c565b6000826001015490506000801b8114611ee557809350505050611f0c565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47093505050505b90565b6000611f1961111c565b60000160089054906101000a900460ff16905090565b600081519050919050565b600082825260208201905092915050565b60005b83811015611f69578082015181840152602081019050611f4e565b60008484015250505050565b6000601f19601f8301169050919050565b6000611f9182611f2f565b611f9b8185611f3a565b9350611fab818560208601611f4b565b611fb481611f75565b840191505092915050565b60006020820190508181036000830152611fd98184611f86565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061202082611ff5565b9050919050565b61203081612015565b811461203b57600080fd5b50565b60008135905061204d81612027565b92915050565b6000819050919050565b61206681612053565b811461207157600080fd5b50565b6000813590506120838161205d565b92915050565b600080604083850312156120a05761209f611feb565b5b60006120ae8582860161203e565b92505060206120bf85828601612074565b9150509250929050565b60008115159050919050565b6120de816120c9565b82525050565b60006020820190506120f960008301846120d5565b92915050565b61210881612053565b82525050565b600060208201905061212360008301846120ff565b92915050565b60008060006060848603121561214257612141611feb565b5b60006121508682870161203e565b93505060206121618682870161203e565b925050604061217286828701612074565b9150509250925092565b600060ff82169050919050565b6121928161217c565b82525050565b60006020820190506121ad6000830184612189565b92915050565b6000819050919050565b6121c6816121b3565b82525050565b60006020820190506121e160008301846121bd565b92915050565b6000602082840312156121fd576121fc611feb565b5b600061220b84828501612074565b91505092915050565b6000819050919050565b600061223961223461222f84611ff5565b612214565b611ff5565b9050919050565b600061224b8261221e565b9050919050565b600061225d82612240565b9050919050565b61226d81612252565b82525050565b60006020820190506122886000830184612264565b92915050565b6000602082840312156122a4576122a3611feb565b5b60006122b28482850161203e565b91505092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6122fd82611f75565b810181811067ffffffffffffffff8211171561231c5761231b6122c5565b5b80604052505050565b600061232f611fe1565b905061233b82826122f4565b919050565b600067ffffffffffffffff82111561235b5761235a6122c5565b5b61236482611f75565b9050602081019050919050565b82818337600083830152505050565b600061239361238e84612340565b612325565b9050828152602081018484840111156123af576123ae6122c0565b5b6123ba848285612371565b509392505050565b600082601f8301126123d7576123d66122bb565b5b81356123e7848260208601612380565b91505092915050565b600080600080600060a0868803121561240c5761240b611feb565b5b600061241a8882890161203e565b955050602086013567ffffffffffffffff81111561243b5761243a611ff0565b5b612447888289016123c2565b945050604086013567ffffffffffffffff81111561246857612467611ff0565b5b612474888289016123c2565b935050606061248588828901612074565b92505060806124968882890161203e565b9150509295509295909350565b60007fff0000000000000000000000000000000000000000000000000000000000000082169050919050565b6124d8816124a3565b82525050565b6124e781612015565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61252281612053565b82525050565b60006125348383612519565b60208301905092915050565b6000602082019050919050565b6000612558826124ed565b61256281856124f8565b935061256d83612509565b8060005b8381101561259e5781516125858882612528565b975061259083612540565b925050600181019050612571565b5085935050505092915050565b600060e0820190506125c0600083018a6124cf565b81810360208301526125d28189611f86565b905081810360408301526125e68188611f86565b90506125f560608301876120ff565b61260260808301866124de565b61260f60a08301856121bd565b81810360c0830152612621818461254d565b905098975050505050505050565b600060208201905061264460008301846124de565b92915050565b6126538161217c565b811461265e57600080fd5b50565b6000813590506126708161264a565b92915050565b61267f816121b3565b811461268a57600080fd5b50565b60008135905061269c81612676565b92915050565b600080600080600080600060e0888a0312156126c1576126c0611feb565b5b60006126cf8a828b0161203e565b97505060206126e08a828b0161203e565b96505060406126f18a828b01612074565b95505060606127028a828b01612074565b94505060806127138a828b01612661565b93505060a06127248a828b0161268d565b92505060c06127358a828b0161268d565b91505092959891949750929550565b6000806040838503121561275b5761275a611feb565b5b60006127698582860161203e565b925050602061277a8582860161203e565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806127cb57607f821691505b6020821081036127de576127dd612784565b5b50919050565b6000819050919050565b600067ffffffffffffffff82169050919050565b600061281d612818612813846127e4565b612214565b6127ee565b9050919050565b61282d81612802565b82525050565b60006020820190506128486000830184612824565b92915050565b7f4549503731323a20556e696e697469616c697a65640000000000000000000000600082015250565b6000612884601583611f3a565b915061288f8261284e565b602082019050919050565b600060208201905081810360008301526128b381612877565b9050919050565b600060c0820190506128cf60008301896121bd565b6128dc60208301886124de565b6128e960408301876124de565b6128f660608301866120ff565b61290360808301856120ff565b61291060a08301846120ff565b979650505050505050565b600060408201905061293060008301856124de565b61293d60208301846124de565b9392505050565b600060608201905061295960008301866124de565b61296660208301856120ff565b61297360408301846120ff565b949350505050565b612984816120c9565b811461298f57600080fd5b50565b6000815190506129a18161297b565b92915050565b6000602082840312156129bd576129bc611feb565b5b60006129cb84828501612992565b91505092915050565b600060a0820190506129e960008301886121bd565b6129f660208301876121bd565b612a0360408301866121bd565b612a1060608301856120ff565b612a1d60808301846124de565b9695505050505050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302612a897fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82612a4c565b612a938683612a4c565b95508019841693508086168417925050509392505050565b6000612ac6612ac1612abc84612053565b612214565b612053565b9050919050565b6000819050919050565b612ae083612aab565b612af4612aec82612acd565b848454612a59565b825550505050565b600090565b612b09612afc565b612b14818484612ad7565b505050565b5b81811015612b3857612b2d600082612b01565b600181019050612b1a565b5050565b601f821115612b7d57612b4e81612a27565b612b5784612a3c565b81016020851015612b66578190505b612b7a612b7285612a3c565b830182612b19565b50505b505050565b600082821c905092915050565b6000612ba060001984600802612b82565b1980831691505092915050565b6000612bb98383612b8f565b9150826002028217905092915050565b612bd282611f2f565b67ffffffffffffffff811115612beb57612bea6122c5565b5b612bf582546127b3565b612c00828285612b3c565b600060209050601f831160018114612c335760008415612c21578287015190505b612c2b8582612bad565b865550612c93565b601f198416612c4186612a27565b60005b82811015612c6957848901518255600182019150602085019450602081019050612c44565b86831015612c865784890151612c82601f891682612b8f565b8355505b6001600288020188555050505b505050505050565b6000608082019050612cb060008301876121bd565b612cbd6020830186612189565b612cca60408301856121bd565b612cd760608301846121bd565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612d4982612053565b9150612d5483612053565b9250828201905080821115612d6c57612d6b612d0f565b5b9291505056fea2646970667358221220a3ec5ba52fe4d83877d7a932c64978feb26bdc46fe9585ddf3c95226440627a264736f6c63430008180033