erc20-demurrage-token/python/erc20_demurrage_token/data/DemurrageTokenSingleNocap.bin
2023-03-22 10:18:51 +00:00

1 line
50 KiB
Plaintext

6101006040523480156200001257600080fd5b50604051620062f5380380620062f5833981810160405281019062000038919062000863565b6801000000000000000083600f0b126200005157600080fd5b6200005b62000578565b33600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508660069081620000ad919062000b84565b508560079081620000bf919062000b84565b508460ff16608081815250504260038190555060035460a08181525050603c83620000eb919062000c9a565b60c08181525050620001126001620002a96401000000000262002fc2176401000000009004565b600260006101000a8154816fffffffffffffffffffffffffffffffff0219169083600f0b6fffffffffffffffffffffffffffffffff1602179055506200016c84620002d06401000000000262002fe8176401000000009004565b600f0b60e081600f0b81525050620001a86000600260009054906101000a9004600f0b6000600162000324640100000000026401000000009004565b90506000819080600181540180825580915050600190039060005260206000200160009091909190915060008201518160000160006101000a81548163ffffffff021916908363ffffffff16021790555060208201518160000160046101000a81548168ffffffffffffffffff021916908368ffffffffffffffffff160217905550604082015181600001600d6101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550505081600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050505062000ce5565b6000677fffffffffffffff821115620002c157600080fd5b6040829060020a029050919050565b60008082600f0b13620002e257600080fd5b60806fb17217f7d1cf79abc9e3b39803f2f6af6200030f84620003a8640100000000026401000000009004565b600f0b02908060020a82049150509050919050565b6200032e62000578565b6200033862000578565b82816000019063ffffffff16908163ffffffff168152505083816020019068ffffffffffffffffff16908168ffffffffffffffffff168152505067ffffffffffffffff8516816040019067ffffffffffffffff16908167ffffffffffffffff168152505080915050949350505050565b60008082600f0b13620003ba57600080fd5b60008083600f0b9050680100000000000000008112620003f6576040819060008212600003808260020a82851804189250505090506040820191505b640100000000811262000425576020819060008212600003808260020a82851804189250505090506020820191505b62010000811262000452576010819060008212600003808260020a82851804189250505090506010820191505b61010081126200047e576008819060008212600003808260020a82851804189250505090506008820191505b60108112620004a9576004819060008212600003808260020a82851804189250505090506004820191505b60048112620004d4576002819060008212600003808260020a82851804189250505090506002820191505b60028112620004e4576001820191505b600060408084039060020a029050600083607f0386600f0b9060020a029050600067800000000000000090505b60008113156200056b578182029150600060ff83908060020a8204915050905080607f0183908060020a8204915050925080820284019350506001819060008212600003808260020a828518041892505050905062000511565b5081945050505050919050565b6040518060600160405280600063ffffffff168152602001600068ffffffffffffffffff168152602001600067ffffffffffffffff1681525090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200061d82620005d2565b810181811067ffffffffffffffff821117156200063f576200063e620005e3565b5b80604052505050565b600062000654620005b4565b905062000662828262000612565b919050565b600067ffffffffffffffff821115620006855762000684620005e3565b5b6200069082620005d2565b9050602081019050919050565b60005b83811015620006bd578082015181840152602081019050620006a0565b60008484015250505050565b6000620006e0620006da8462000667565b62000648565b905082815260208101848484011115620006ff57620006fe620005cd565b5b6200070c8482856200069d565b509392505050565b600082601f8301126200072c576200072b620005c8565b5b81516200073e848260208601620006c9565b91505092915050565b600060ff82169050919050565b6200075f8162000747565b81146200076b57600080fd5b50565b6000815190506200077f8162000754565b92915050565b600081600f0b9050919050565b6200079d8162000785565b8114620007a957600080fd5b50565b600081519050620007bd8162000792565b92915050565b6000819050919050565b620007d881620007c3565b8114620007e457600080fd5b50565b600081519050620007f881620007cd565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200082b82620007fe565b9050919050565b6200083d816200081e565b81146200084957600080fd5b50565b6000815190506200085d8162000832565b92915050565b60008060008060008060c08789031215620008835762000882620005be565b5b600087015167ffffffffffffffff811115620008a457620008a3620005c3565b5b620008b289828a0162000714565b965050602087015167ffffffffffffffff811115620008d657620008d5620005c3565b5b620008e489828a0162000714565b9550506040620008f789828a016200076e565b94505060606200090a89828a01620007ac565b93505060806200091d89828a01620007e7565b92505060a06200093089828a016200084c565b9150509295509295509295565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200099057607f821691505b602082108103620009a657620009a562000948565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b60008160020a8302905092915050565b60006008830262000a137fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620009d1565b62000a1f8683620009d1565b95508019841693508086168417925050509392505050565b6000819050919050565b600062000a6262000a5c62000a5684620007c3565b62000a37565b620007c3565b9050919050565b6000819050919050565b62000a7e8362000a41565b62000a9662000a8d8262000a69565b848454620009e1565b825550505050565b600090565b62000aad62000a9e565b62000aba81848462000a73565b505050565b5b8181101562000ae25762000ad660008262000aa3565b60018101905062000ac0565b5050565b601f82111562000b315762000afb81620009ac565b62000b0684620009c1565b8101602085101562000b16578190505b62000b2e62000b2585620009c1565b83018262000abf565b50505b505050565b60008160020a8304905092915050565b600062000b596000198460080262000b36565b1980831691505092915050565b600062000b74838362000b46565b9150826002028217905092915050565b62000b8f826200093d565b67ffffffffffffffff81111562000bab5762000baa620005e3565b5b62000bb7825462000977565b62000bc482828562000ae6565b600060209050601f83116001811462000bfc576000841562000be7578287015190505b62000bf3858262000b66565b86555062000c63565b601f19841662000c0c86620009ac565b60005b8281101562000c365784890151825560018201915060208501945060208101905062000c0f565b8683101562000c56578489015162000c52601f89168262000b46565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000ca782620007c3565b915062000cb483620007c3565b925082820262000cc481620007c3565b9150828204841483151762000cde5762000cdd62000c6b565b5b5092915050565b60805160a05160c05160e05161559062000d656000396000818161157a01528181612538015281816127140152612b10015260008181611bfa015281816124fb01528181612a6801528181612cac0152612e94015260008181611c2601528181612cd801528181612eb50152612efa015260006115d801526155906000f3fe608060405234801561001057600080fd5b50600436106103b6576000357c0100000000000000000000000000000000000000000000000000000000900480636f8b44b011610206578063a457c2d71161012c578063d7a52fa9116100ca578063e69571af11610099578063e69571af14610c21578063e809529514610c51578063eda4e6d614610c6f578063f2fde38b14610c8d576103b6565b8063d7a52fa914610b87578063d89135cd14610ba3578063da2824a814610bc1578063e54063a614610bf1576103b6565b8063b470aade11610106578063b470aade14610afd578063c0ab707714610b1b578063d340ef8a14610b4b578063d5abeb0114610b69576103b6565b8063a457c2d714610a7f578063a9059cbb14610aaf578063b1cb0db314610adf576103b6565b806384dde4af116101a45780638f1df6bc116101735780638f1df6bc14610a0757806395d89b4114610a255780639f24880814610a43578063a2309ff814610a61576103b6565b806384dde4af1461097f57806386fe212d1461099d5780638da5cb5b146109cd5780638f0b2d5d146109eb576103b6565b806373f42561116101e057806373f42561146108f55780637445e33a1461091357806374bedb951461094357806379ba509714610961576103b6565b80636f8b44b01461088b57806370a08231146108a7578063731f237c146108d7576103b6565b806331333487116102eb57806347a50517116102895780635ae06f7e116102585780635ae06f7e146107dd5780635f408c041461080d5780636787a9be1461082b5780636a2d094e1461085b576103b6565b806347a505171461072f5780634abfbba21461075f57806351b4541c1461078f57806358b2833b146107bf576103b6565b806339509351116102c5578063395093511461066d57806340452d911461069d57806342966c68146106cf578063449a52f8146106ff576103b6565b80633133348714610601578063313ce5671461063157806331a5995d1461064f576103b6565b806318cbbcfc1161035857806323a859441161033257806323a859441461054157806323b872dd146105715780632a7aec09146105a15780632c1758c1146105d1576103b6565b806318cbbcfc146104d55780631989c6a8146104f3578063213d1e1e14610511576103b6565b8063095ea7b311610394578063095ea7b31461043957806309f28f3c1461046957806311c566151461048757806318160ddd146104b7576103b6565b806301681a62146103bb57806301ffc9a7146103eb57806306fdde031461041b575b600080fd5b6103d560048036038101906103d0919061494a565b610cbd565b6040516103e29190614990565b60405180910390f35b61040560048036038101906104009190614a03565b610da6565b6040516104129190614a4b565b60405180910390f35b610423610efa565b6040516104309190614af6565b60405180910390f35b610453600480360381019061044e9190614b44565b610f88565b6040516104609190614a4b565b60405180910390f35b6104716111c4565b60405161047e9190614ba0565b60405180910390f35b6104a1600480360381019061049c9190614be7565b6111d7565b6040516104ae9190614990565b60405180910390f35b6104bf611227565b6040516104cc9190614990565b60405180910390f35b6104dd61123e565b6040516104ea9190614990565b60405180910390f35b6104fb611243565b6040516105089190614990565b60405180910390f35b61052b60048036038101906105269190614dc8565b61124f565b6040516105389190614990565b60405180910390f35b61055b60048036038101906105569190614dc8565b611268565b6040516105689190614a4b565b60405180910390f35b61058b60048036038101906105869190614df5565b6112d0565b6040516105989190614a4b565b60405180910390f35b6105bb60048036038101906105b69190614dc8565b6114ee565b6040516105c89190614ba0565b60405180910390f35b6105eb60048036038101906105e69190614e48565b611526565b6040516105f89190614a4b565b60405180910390f35b61061b60048036038101906106169190614e75565b611559565b6040516106289190614990565b60405180910390f35b6106396115d6565b6040516106469190614990565b60405180910390f35b6106576115fa565b6040516106649190614990565b60405180910390f35b61068760048036038101906106829190614b44565b611600565b6040516106949190614a4b565b60405180910390f35b6106b760048036038101906106b29190614e48565b611796565b6040516106c693929190614ee2565b60405180910390f35b6106e960048036038101906106e49190614e48565b611805565b6040516106f69190614a4b565b60405180910390f35b61071960048036038101906107149190614b44565b6119d6565b6040516107269190614a4b565b60405180910390f35b6107496004803603810190610744919061494a565b611bad565b6040516107569190614990565b60405180910390f35b61077960048036038101906107749190614e48565b611bf6565b6040516107869190614990565b60405180910390f35b6107a960048036038101906107a49190614e48565b611c56565b6040516107b69190614990565b60405180910390f35b6107c7611c77565b6040516107d49190614990565b60405180910390f35b6107f760048036038101906107f2919061494a565b611c7d565b6040516108049190614a4b565b60405180910390f35b610815611d87565b6040516108229190614f35565b60405180910390f35b61084560048036038101906108409190614e48565b611e54565b6040516108529190614990565b60405180910390f35b61087560048036038101906108709190614e48565b611e95565b6040516108829190614990565b60405180910390f35b6108a560048036038101906108a09190614e48565b611eb6565b005b6108c160048036038101906108bc919061494a565b611f7e565b6040516108ce9190614990565b60405180910390f35b6108df611fe5565b6040516108ec9190614990565b60405180910390f35b6108fd611ff6565b60405161090a9190614990565b60405180910390f35b61092d60048036038101906109289190614dc8565b611ffc565b60405161093a9190614990565b60405180910390f35b61094b61202a565b6040516109589190614990565b60405180910390f35b610969612030565b6040516109769190614a4b565b60405180910390f35b6109876121db565b6040516109949190614f5f565b60405180910390f35b6109b760048036038101906109b29190614e48565b612201565b6040516109c49190614990565b60405180910390f35b6109d56122e8565b6040516109e29190614f5f565b60405180910390f35b610a056004803603810190610a00919061494a565b61230e565b005b610a0f6123c3565b604051610a1c9190614a4b565b60405180910390f35b610a2d612684565b604051610a3a9190614af6565b60405180910390f35b610a4b612712565b604051610a589190614ba0565b60405180910390f35b610a69612736565b604051610a769190614990565b60405180910390f35b610a996004803603810190610a949190614b44565b612740565b604051610aa69190614a4b565b60405180910390f35b610ac96004803603810190610ac49190614b44565b61295f565b604051610ad69190614a4b565b60405180910390f35b610ae7612a60565b604051610af49190614990565b60405180910390f35b610b05612a66565b604051610b129190614990565b60405180910390f35b610b356004803603810190610b309190614e48565b612a8a565b604051610b429190614990565b60405180910390f35b610b53612c11565b604051610b609190614990565b60405180910390f35b610b71612c17565b604051610b7e9190614990565b60405180910390f35b610ba16004803603810190610b9c9190614e48565b612c1d565b005b610bab612d1c565b604051610bb89190614990565b60405180910390f35b610bdb6004803603810190610bd6919061494a565b612d26565b604051610be89190614a4b565b60405180910390f35b610c0b6004803603810190610c069190614dc8565b612dfa565b604051610c189190614990565b60405180910390f35b610c3b6004803603810190610c369190614f7a565b612e0e565b604051610c489190615050565b60405180910390f35b610c59612e8e565b604051610c669190615096565b60405180910390f35b610c77612ef8565b604051610c849190614990565b60405180910390f35b610ca76004803603810190610ca2919061494a565b612f1c565b604051610cb49190614a4b565b60405180910390f35b600080600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555080600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610d9691906150e0565b9250508190555080915050919050565b600063c6bb4b707c010000000000000000000000000000000000000000000000000000000002827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610dfa5760019050610ef5565b63449a52f87c010000000000000000000000000000000000000000000000000000000002827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610e4c5760019050610ef5565b6301ffc9a77c010000000000000000000000000000000000000000000000000000000002827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610e9e5760019050610ef5565b639493f8b27c010000000000000000000000000000000000000000000000000000000002827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191603610ef05760019050610ef5565b600090505b919050565b60068054610f0790615143565b80601f0160208091040260200160405190810160405280929190818152602001828054610f3390615143565b8015610f805780601f10610f5557610100808354040283529160200191610f80565b820191906000526020600020905b815481529060010190602001808311610f6357829003601f168201915b505050505081565b6000806000610f95611d87565b905060028160ff1603610fad576000925050506111be565b60008160ff161115610ff4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610feb906151c0565b60405180910390fd5b6000600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411156110bd57600084146110bc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b39061522c565b60405180910390fd5b5b6110c56123c3565b506110cf84611e54565b915081600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925866040516111af9190614990565b60405180910390a36001925050505b92915050565b600260009054906101000a9004600f0b81565b6000806111fe6111e685612fc2565b6111f96111f36001612fc2565b8661302a565b613091565b905061120981613110565b67ffffffffffffffff168461121e919061524c565b91505092915050565b6000600b54600854611239919061524c565b905090565b600f81565b60008080549050905090565b6000816020015168ffffffffffffffffff169050919050565b600080826000015163ffffffff16111561128557600090506112cb565b6000826020015168ffffffffffffffffff1611156112a657600090506112cb565b6000826040015167ffffffffffffffff1611156112c657600090506112cb565b600190505b919050565b6000806000806112de611d87565b905060028160ff16036112f757600093505050506114e7565b60008160ff16111561133e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611335906151c0565b60405180910390fd5b6113466123c3565b5061135085611e54565b925082600d60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156113db57600080fd5b82600d60008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611467919061524c565b92505081905550611479878785613145565b91508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef876040516114d89190614990565b60405180910390a38193505050505b9392505050565b60008067ffffffffffffffff836040015160070b169050600081600f0b0361151d5761151a6001612fc2565b90505b80915050919050565b6000600f821061153557600080fd5b6000820361154a57600f601254149050611554565b8160125483161490505b919050565b60008060008061156886612fc2565b925061157385612fc2565b915061159f7f000000000000000000000000000000000000000000000000000000000000000083613091565b90506115aa81613168565b90506115b68382613091565b90506115c181613110565b67ffffffffffffffff16935050505092915050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60125481565b60008061160b6123c3565b5061161583611e54565b905080600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546116a391906150e0565b925050819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040516117839190614990565b60405180910390a3600191505092915050565b600081815481106117a657600080fd5b906000526020600020016000915090508060000160009054906101000a900463ffffffff16908060000160049054906101000a900468ffffffffffffffffff169080600001600d9054906101000a900467ffffffffffffffff16905083565b600080611810611d87565b60ff161461181d57600080fd5b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806118c25750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b611901576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118f8906152cc565b60405180910390fd5b600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111561194d57600080fd5b600061195883611e54565b905061196433826131f5565b5082600b600082825461197791906150e0565b925050819055503373ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5846040516119c49190614990565b60405180910390a26001915050919050565b60008060006119e3611d87565b60ff16146119f057600080fd5b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611a955750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b611ad4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611acb906152cc565b60405180910390fd5b611adc6123c3565b5060006011541115611b055760115483600854611af991906150e0565b1115611b0457600080fd5b5b8260086000828254611b1791906150e0565b92505081905550611b2783611e54565b9050611b3384826132f9565b508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fab8530f87dc9b59234c4623bf917212bb2536d647574c8e7e5da92c2ede0c9f885604051611b919190614990565b60405180910390a3611ba16133ba565b50600191505092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60007f000000000000000000000000000000000000000000000000000000000000000082611c2491906152ec565b7f0000000000000000000000000000000000000000000000000000000000000000611c4f91906150e0565b9050919050565b6000603c8242611c66919061524c565b611c70919061535d565b9050919050565b60035481565b6000611c8c600160ff16611526565b15611c9657600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611d1d57503373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b611d2657600080fd5b6000600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060019050919050565b6000601060009054906101000a900460ff1615611da75760019050611e51565b6000600f5403611dba5760009050611e51565b600f544210611e4c57611de7603c600354611dd5919061535d565b600f54611de2919061524c565b612a8a565b506001601060006101000a81548160ff0219169083151502179055507ff80dbaea4785589e52984ca36a31de106adc77759539a5c7d92883bf49692fe942604051611e329190614990565b60405180910390a1611e426123c3565b5060029050611e51565b600090505b90565b600080611e78611e6384612fc2565b600260009054906101000a9004600f0b61357e565b9050611e8381613110565b67ffffffffffffffff16915050919050565b6000603c8242611ea5919061524c565b611eaf919061535d565b9050919050565b611ec3600860ff16611526565b15611ecd57600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f2757600080fd5b611f2f611227565b8111611f3a57600080fd5b6011547f9722adea12ab7ef86fc45b88f0e0b567639e8dddaae60261e08c03d747fbbfe682604051611f6c9190614990565b60405180910390a28060118190555050565b600080600080611f95611f9086611bad565b612fc2565b9250611fa2600354611c56565b9050611fbd83600260009054906101000a9004600f0b613091565b9150611fdb611fcb83613110565b67ffffffffffffffff1682611559565b9350505050919050565b6000611ff16000612a8a565b905090565b600b5481565b600080600061200a8461124f565b9150612015846114ee565b905061202182826111d7565b92505050919050565b600a5481565b600080600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461208d57600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600191505090565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060108210612246576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161223d906153da565b60405180910390fd5b600060125483161461228d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161228490615446565b60405180910390fd5b81601260008282541792505081905550600f6012541415157f6b7e2e653f93b645d4ed7292d6429f96637084363e477c8aaea1a43ed13c284e6012546040516122d69190614990565b60405180910390a26012549050919050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61231b600260ff16611526565b1561232557600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461237f57600080fd5b80600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60006123cd6148a1565b6123d56148a1565b6123dd6148a1565b60008060008060006123ed611fe5565b506123f661360a565b975061240188611268565b1561241757600098505050505050505050612681565b60006009548154811061242d5761242c615466565b5b906000526020600020016040518060600160405290816000820160009054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016000820160049054906101000a900468ffffffffffffffffff1668ffffffffffffffffff1668ffffffffffffffffff16815260200160008201600d9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff168152505095506124da88612dfa565b94506001856124e991906150e0565b90506124f4866114ee565b9350603c857f000000000000000000000000000000000000000000000000000000000000000061252491906152ec565b61252e919061535d565b915061256a6125657f000000000000000000000000000000000000000000000000000000000000000061256085612fc2565b613091565b613168565b925061258060008461257a611227565b84612e0e565b96506000879080600181540180825580915050600190039060005260206000200160009091909190915060008201518160000160006101000a81548163ffffffff021916908363ffffffff16021790555060208201518160000160046101000a81548168ffffffffffffffffff021916908368ffffffffffffffffff160217905550604082015181600001600d6101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550505061263c876137a0565b507f55d243082e019fce4009ccea5368b92e436c17586a1e793c7deda16df4e5d6758160405161266c9190614990565b60405180910390a16001985050505050505050505b90565b6007805461269190615143565b80601f01602080910402602001604051908101604052809291908181526020018280546126bd90615143565b801561270a5780601f106126df5761010080835404028352916020019161270a565b820191906000526020600020905b8154815290600101906020018083116126ed57829003601f168201915b505050505081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600854905090565b60008061274c83611e54565b905080600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156127d757600080fd5b6127df6123c3565b5080600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461286c919061524c565b925050819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205460405161294c9190614990565b60405180910390a3600191505092915050565b60008060008061296d611d87565b905060028160ff16036129865760009350505050612a5a565b60008160ff1611156129cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129c4906151c0565b60405180910390fd5b6129d56123c3565b506129df85611e54565b92506129ec338785613145565b91508573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87604051612a4b9190614990565b60405180910390a38193505050505b92915050565b600f5481565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000806000806000601060009054906101000a900460ff1615612ab4576000945050505050612c0c565b612abf600354611c56565b925060008303612ad6576000945050505050612c0c565b600260009054906101000a9004600f0b9050600086118015612af757508286105b15612b00578592505b612b0983612fc2565b9150612b357f000000000000000000000000000000000000000000000000000000000000000083613091565b9350612b4084613168565b9350612b5b600260009054906101000a9004600f0b85613091565b600260006101000a8154816fffffffffffffffffffffffffffffffff0219169083600f0b6fffffffffffffffffffffffffffffffff160217905550603c83612ba391906152ec565b600354612bb091906150e0565b60038190555080600f0b836003547f1c9c74563c32efd114cb36fb5e432d9386c8254d08456614804a33a3088ab736600260009054906101000a9004600f0b604051612bfc9190614ba0565b60405180910390a4829450505050505b919050565b60095481565b60115481565b6000612c2c600460ff16611526565b15612c3657600080fd5b601060009054906101000a900460ff1615612c5057600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612caa57600080fd5b7f000000000000000000000000000000000000000000000000000000000000000082612cd691906152ec565b7f0000000000000000000000000000000000000000000000000000000000000000612d0191906150e0565b9050600f548111612d1157600080fd5b80600f819055505050565b6000600b54905090565b6000612d35600160ff16611526565b15612d3f57600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612d9957600080fd5b6001600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060019050919050565b6000816000015163ffffffff169050919050565b612e166148a1565b612e1e6148a1565b82816000019063ffffffff16908163ffffffff168152505083816020019068ffffffffffffffffff16908168ffffffffffffffffff168152505067ffffffffffffffff8516816040019067ffffffffffffffff16908167ffffffffffffffff168152505080915050949350505050565b600060017f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000042612edf919061524c565b612ee9919061535d565b612ef391906150e0565b905090565b7f000000000000000000000000000000000000000000000000000000000000000081565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612f7857600080fd5b81600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060019050919050565b6000677fffffffffffffff821115612fd957600080fd5b6040829060020a029050919050565b60008082600f0b13612ff957600080fd5b60806fb17217f7d1cf79abc9e3b39803f2f6af613015846138bf565b600f0b02908060020a82049150509050919050565b60008082600f0b84600f0b0390507fffffffffffffffffffffffffffffffff80000000000000000000000000000000600f0b811215801561307e57506f7fffffffffffffffffffffffffffffff600f0b8113155b61308757600080fd5b8091505092915050565b600080604083600f0b85600f0b029060008212600003808260020a82851804189250505090507fffffffffffffffffffffffffffffffff80000000000000000000000000000000600f0b81121580156130fd57506f7fffffffffffffffffffffffffffffff600f0b8113155b61310657600080fd5b8091505092915050565b60008082600f0b121561312257600080fd5b604082600f0b9060008212600003808260020a8285180418925050509050919050565b600061315184836131f5565b5061315c83836132f9565b50600190509392505050565b60006840000000000000000082600f0b1261318257600080fd5b7fffffffffffffffffffffffffffffffffffffffffffffffc0000000000000000082600f0b12156131b657600090506131f0565b6131ed6080700171547652b82fe1777d0ffda0d23a7d1284600f0b029060008212600003808260020a828518041892505050613a85565b90505b919050565b6000806000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000840361324f576000925050506132f3565b61325885611bad565b91508382101561329d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613294906154e1565b60405180910390fd5b83826132a9919061524c565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001925050505b92915050565b6000806000600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060008403613353576000925050506133b4565b61335c85611bad565b9150838261336a91906150e0565b600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001925050505b92915050565b60006133c46148a1565b60006133ce611227565b9050600060016000805490506133e4919061524c565b815481106133f5576133f4615466565b5b906000526020600020016040518060600160405290816000820160009054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016000820160049054906101000a900468ffffffffffffffffff1668ffffffffffffffffff1668ffffffffffffffffff16815260200160008201600d9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff1681525050915080826020019068ffffffffffffffffff16908168ffffffffffffffffff168152505081600060016000805490506134d0919061524c565b815481106134e1576134e0615466565b5b9060005260206000200160008201518160000160006101000a81548163ffffffff021916908363ffffffff16021790555060208201518160000160046101000a81548168ffffffffffffffffff021916908368ffffffffffffffffff160217905550604082015181600001600d6101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555090505060019250505090565b60008082600f0b0361358f57600080fd5b600082600f0b604085600f0b9060020a02816135ae576135ad61532e565b5b0590507fffffffffffffffffffffffffffffffff80000000000000000000000000000000600f0b81121580156135f757506f7fffffffffffffffffffffffffffffff600f0b8113155b61360057600080fd5b8091505092915050565b6136126148a1565b61361a6148a1565b6136226148a1565b6000806009548154811061363957613638615466565b5b906000526020600020016040518060600160405290816000820160009054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016000820160049054906101000a900468ffffffffffffffffff1668ffffffffffffffffff1668ffffffffffffffffff16815260200160008201600d9054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff168152505092503073ffffffffffffffffffffffffffffffffffffffff1663e80952956040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381865afa158015613744573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613768919061552d565b6fffffffffffffffffffffffffffffffff16905061378583612dfa565b81116137965781935050505061379d565b8293505050505b90565b60008060006137ae84611ffc565b6137b6611227565b6137c0919061524c565b9150600a546137ce83611e54565b6137d8919061524c565b9050613806600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16826132f9565b50836000015163ffffffff16600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f9a2a887706623ad3ff7fc85652deeceabe9fe1e00466c597972079ee91ea40d38460405161387a9190614990565b60405180910390a360016009600082825461389591906150e0565b9250508190555080600a60008282546138ae91906150e0565b925050819055508192505050919050565b60008082600f0b136138d057600080fd5b60008083600f0b905068010000000000000000811261390b576040819060008212600003808260020a82851804189250505090506040820191505b6401000000008112613939576020819060008212600003808260020a82851804189250505090506020820191505b620100008112613965576010819060008212600003808260020a82851804189250505090506010820191505b6101008112613990576008819060008212600003808260020a82851804189250505090506008820191505b601081126139ba576004819060008212600003808260020a82851804189250505090506004820191505b600481126139e4576002819060008212600003808260020a82851804189250505090506002820191505b600281126139f3576001820191505b600060408084039060020a029050600083607f0386600f0b9060020a029050600067800000000000000090505b6000811315613a78578182029150600060ff83908060020a8204915050905080607f0183908060020a8204915050925080820284019350506001819060008212600003808260020a8285180418925050509050613a20565b5081945050505050919050565b60006840000000000000000082600f0b12613a9f57600080fd5b7fffffffffffffffffffffffffffffffffffffffffffffffc0000000000000000082600f0b1215613ad3576000905061489c565b60006f80000000000000000000000000000000905060006780000000000000008416600f0b1315613b2157608070016a09e667f3bcc908b2fb1366ea957d3e8202908060020a820491505090505b60006740000000000000008416600f0b1315613b5a5760807001306fe0a31b7152de8d5a46305c85edec8202908060020a820491505090505b60006720000000000000008416600f0b1315613b935760807001172b83c7d517adcdf7c8c50eb14a791f8202908060020a820491505090505b60006710000000000000008416600f0b1315613bcc57608070010b5586cf9890f6298b92b71842a983638202908060020a820491505090505b60006708000000000000008416600f0b1315613c055760807001059b0d31585743ae7c548eb68ca417fd8202908060020a820491505090505b60006704000000000000008416600f0b1315613c3e576080700102c9a3e778060ee6f7caca4f7a29bde88202908060020a820491505090505b60006702000000000000008416600f0b1315613c7757608070010163da9fb33356d84a66ae336dcdfa3f8202908060020a820491505090505b60006701000000000000008416600f0b1315613cb0576080700100b1afa5abcbed6129ab13ec11dc95438202908060020a820491505090505b600066800000000000008416600f0b1315613ce857608070010058c86da1c09ea1ff19d294cf2f679b8202908060020a820491505090505b600066400000000000008416600f0b1315613d205760807001002c605e2e8cec506d21bfc89a23a00f8202908060020a820491505090505b600066200000000000008416600f0b1315613d58576080700100162f3904051fa128bca9c55c31e5df8202908060020a820491505090505b600066100000000000008416600f0b1315613d905760807001000b175effdc76ba38e31671ca9397258202908060020a820491505090505b600066080000000000008416600f0b1315613dc8576080700100058ba01fb9f96d6cacd4b180917c3d8202908060020a820491505090505b600066040000000000008416600f0b1315613e0057608070010002c5cc37da9491d0985c348c68e7b38202908060020a820491505090505b600066020000000000008416600f0b1315613e385760807001000162e525ee054754457d59952920268202908060020a820491505090505b600066010000000000008416600f0b1315613e7057608070010000b17255775c040618bf4a4ade83fc8202908060020a820491505090505b6000658000000000008416600f0b1315613ea75760807001000058b91b5bc9ae2eed81e9b7d4cfab8202908060020a820491505090505b6000654000000000008416600f0b1315613ede576080700100002c5c89d5ec6ca4d7c8acc017b7c98202908060020a820491505090505b6000652000000000008416600f0b1315613f1557608070010000162e43f4f831060e02d839a9d16d8202908060020a820491505090505b6000651000000000008416600f0b1315613f4c576080700100000b1721bcfc99d9f890ea069117638202908060020a820491505090505b6000650800000000008416600f0b1315613f8357608070010000058b90cf1e6d97f9ca14dbcc16288202908060020a820491505090505b6000650400000000008416600f0b1315613fba5760807001000002c5c863b73f016468f6bac5ca2b8202908060020a820491505090505b6000650200000000008416600f0b1315613ff1576080700100000162e430e5a18f6119e3c02282a58202908060020a820491505090505b6000650100000000008416600f0b13156140285760807001000000b1721835514b86e6d96efd1bfe8202908060020a820491505090505b60006480000000008416600f0b131561405e576080700100000058b90c0b48c6be5df846c5b2ef8202908060020a820491505090505b60006440000000008416600f0b131561409457608070010000002c5c8601cc6b9e94213c72737a8202908060020a820491505090505b60006420000000008416600f0b13156140ca5760807001000000162e42fff037df38aa2b219f068202908060020a820491505090505b60006410000000008416600f0b131561410057608070010000000b17217fba9c739aa5819f44f98202908060020a820491505090505b60006408000000008416600f0b13156141365760807001000000058b90bfcdee5acd3c1cedc8238202908060020a820491505090505b60006404000000008416600f0b131561416c576080700100000002c5c85fe31f35a6a30da1be508202908060020a820491505090505b60006402000000008416600f0b13156141a257608070010000000162e42ff0999ce3541b9fffcf8202908060020a820491505090505b60006401000000008416600f0b13156141d8576080700100000000b17217f80f4ef5aadda455548202908060020a820491505090505b600063800000008416600f0b131561420d57608070010000000058b90bfbf8479bd5a81b51ad8202908060020a820491505090505b600063400000008416600f0b13156142425760807001000000002c5c85fdf84bd62ae30a74cc8202908060020a820491505090505b600063200000008416600f0b1315614277576080700100000000162e42fefb2fed257559bdaa8202908060020a820491505090505b600063100000008416600f0b13156142ac5760807001000000000b17217f7d5a7716bba4a9ae8202908060020a820491505090505b600063080000008416600f0b13156142e1576080700100000000058b90bfbe9ddbac5e109cce8202908060020a820491505090505b600063040000008416600f0b131561431657608070010000000002c5c85fdf4b15de6f17eb0d8202908060020a820491505090505b600063020000008416600f0b131561434b5760807001000000000162e42fefa494f1478fde058202908060020a820491505090505b600063010000008416600f0b131561438057608070010000000000b17217f7d20cf927c8e94c8202908060020a820491505090505b6000628000008416600f0b13156143b45760807001000000000058b90bfbe8f71cb4e4b33d8202908060020a820491505090505b6000624000008416600f0b13156143e8576080700100000000002c5c85fdf477b662b269458202908060020a820491505090505b6000622000008416600f0b131561441c57608070010000000000162e42fefa3ae53369388c8202908060020a820491505090505b6000621000008416600f0b1315614450576080700100000000000b17217f7d1d351a389d408202908060020a820491505090505b6000620800008416600f0b131561448457608070010000000000058b90bfbe8e8b2d3d4ede8202908060020a820491505090505b6000620400008416600f0b13156144b85760807001000000000002c5c85fdf4741bea6e77e8202908060020a820491505090505b6000620200008416600f0b13156144ec576080700100000000000162e42fefa39fe95583c28202908060020a820491505090505b6000620100008416600f0b13156145205760807001000000000000b17217f7d1cfb72b45e18202908060020a820491505090505b60006180008416600f0b1315614553576080700100000000000058b90bfbe8e7cc35c3f08202908060020a820491505090505b60006140008416600f0b131561458657608070010000000000002c5c85fdf473e242ea388202908060020a820491505090505b60006120008416600f0b13156145b95760807001000000000000162e42fefa39f02b772c8202908060020a820491505090505b60006110008416600f0b13156145ec57608070010000000000000b17217f7d1cf7d83c1a8202908060020a820491505090505b60006108008416600f0b131561461f5760807001000000000000058b90bfbe8e7bdcbe2e8202908060020a820491505090505b60006104008416600f0b1315614652576080700100000000000002c5c85fdf473dea871f8202908060020a820491505090505b60006102008416600f0b131561468557608070010000000000000162e42fefa39ef44d918202908060020a820491505090505b60006101008416600f0b13156146b8576080700100000000000000b17217f7d1cf79e9498202908060020a820491505090505b600060808416600f0b13156146ea57608070010000000000000058b90bfbe8e7bce5448202908060020a820491505090505b600060408416600f0b131561471c5760807001000000000000002c5c85fdf473de6eca8202908060020a820491505090505b600060208416600f0b131561474e576080700100000000000000162e42fefa39ef366f8202908060020a820491505090505b600060108416600f0b13156147805760807001000000000000000b17217f7d1cf79afa8202908060020a820491505090505b600060088416600f0b13156147b2576080700100000000000000058b90bfbe8e7bcd6d8202908060020a820491505090505b600060048416600f0b13156147e457608070010000000000000002c5c85fdf473de6b28202908060020a820491505090505b600060028416600f0b13156148165760807001000000000000000162e42fefa39ef3588202908060020a820491505090505b600060018416600f0b131561484857608070010000000000000000b17217f7d1cf79ab8202908060020a820491505090505b604083600f0b9060008212600003808260020a828518041892505050603f03600f0b81908060020a820491505090506f7fffffffffffffffffffffffffffffff600f0b81111561489757600080fd5b809150505b919050565b6040518060600160405280600063ffffffff168152602001600068ffffffffffffffffff168152602001600067ffffffffffffffff1681525090565b6000604051905090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000614917826148ec565b9050919050565b6149278161490c565b811461493257600080fd5b50565b6000813590506149448161491e565b92915050565b6000602082840312156149605761495f6148e7565b5b600061496e84828501614935565b91505092915050565b6000819050919050565b61498a81614977565b82525050565b60006020820190506149a56000830184614981565b92915050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b6149e0816149ab565b81146149eb57600080fd5b50565b6000813590506149fd816149d7565b92915050565b600060208284031215614a1957614a186148e7565b5b6000614a27848285016149ee565b91505092915050565b60008115159050919050565b614a4581614a30565b82525050565b6000602082019050614a606000830184614a3c565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015614aa0578082015181840152602081019050614a85565b60008484015250505050565b6000601f19601f8301169050919050565b6000614ac882614a66565b614ad28185614a71565b9350614ae2818560208601614a82565b614aeb81614aac565b840191505092915050565b60006020820190508181036000830152614b108184614abd565b905092915050565b614b2181614977565b8114614b2c57600080fd5b50565b600081359050614b3e81614b18565b92915050565b60008060408385031215614b5b57614b5a6148e7565b5b6000614b6985828601614935565b9250506020614b7a85828601614b2f565b9150509250929050565b600081600f0b9050919050565b614b9a81614b84565b82525050565b6000602082019050614bb56000830184614b91565b92915050565b614bc481614b84565b8114614bcf57600080fd5b50565b600081359050614be181614bbb565b92915050565b60008060408385031215614bfe57614bfd6148e7565b5b6000614c0c85828601614b2f565b9250506020614c1d85828601614bd2565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b614c6482614aac565b810181811067ffffffffffffffff82111715614c8357614c82614c2c565b5b80604052505050565b6000614c966148dd565b9050614ca28282614c5b565b919050565b600063ffffffff82169050919050565b614cc081614ca7565b8114614ccb57600080fd5b50565b600081359050614cdd81614cb7565b92915050565b600068ffffffffffffffffff82169050919050565b614d0181614ce3565b8114614d0c57600080fd5b50565b600081359050614d1e81614cf8565b92915050565b600067ffffffffffffffff82169050919050565b614d4181614d24565b8114614d4c57600080fd5b50565b600081359050614d5e81614d38565b92915050565b600060608284031215614d7a57614d79614c27565b5b614d846060614c8c565b90506000614d9484828501614cce565b6000830152506020614da884828501614d0f565b6020830152506040614dbc84828501614d4f565b60408301525092915050565b600060608284031215614dde57614ddd6148e7565b5b6000614dec84828501614d64565b91505092915050565b600080600060608486031215614e0e57614e0d6148e7565b5b6000614e1c86828701614935565b9350506020614e2d86828701614935565b9250506040614e3e86828701614b2f565b9150509250925092565b600060208284031215614e5e57614e5d6148e7565b5b6000614e6c84828501614b2f565b91505092915050565b60008060408385031215614e8c57614e8b6148e7565b5b6000614e9a85828601614b2f565b9250506020614eab85828601614b2f565b9150509250929050565b614ebe81614ca7565b82525050565b614ecd81614ce3565b82525050565b614edc81614d24565b82525050565b6000606082019050614ef76000830186614eb5565b614f046020830185614ec4565b614f116040830184614ed3565b949350505050565b600060ff82169050919050565b614f2f81614f19565b82525050565b6000602082019050614f4a6000830184614f26565b92915050565b614f598161490c565b82525050565b6000602082019050614f746000830184614f50565b92915050565b60008060008060808587031215614f9457614f936148e7565b5b6000614fa287828801614b2f565b9450506020614fb387828801614bd2565b9350506040614fc487828801614b2f565b9250506060614fd587828801614b2f565b91505092959194509250565b614fea81614ca7565b82525050565b614ff981614ce3565b82525050565b61500881614d24565b82525050565b6060820160008201516150246000850182614fe1565b5060208201516150376020850182614ff0565b50604082015161504a6040850182614fff565b50505050565b6000606082019050615065600083018461500e565b92915050565b60006fffffffffffffffffffffffffffffffff82169050919050565b6150908161506b565b82525050565b60006020820190506150ab6000830184615087565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006150eb82614977565b91506150f683614977565b925082820190508082111561510e5761510d6150b1565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061515b57607f821691505b60208210810361516e5761516d615114565b5b50919050565b7f4558504952454400000000000000000000000000000000000000000000000000600082015250565b60006151aa600783614a71565b91506151b582615174565b602082019050919050565b600060208201905081810360008301526151d98161519d565b9050919050565b7f5a45524f5f464952535400000000000000000000000000000000000000000000600082015250565b6000615216600a83614a71565b9150615221826151e0565b602082019050919050565b6000602082019050818103600083015261524581615209565b9050919050565b600061525782614977565b915061526283614977565b925082820390508181111561527a576152796150b1565b5b92915050565b7f4552525f41434345535300000000000000000000000000000000000000000000600082015250565b60006152b6600a83614a71565b91506152c182615280565b602082019050919050565b600060208201905081810360008301526152e5816152a9565b9050919050565b60006152f782614977565b915061530283614977565b925082820261531081614977565b91508282048414831517615327576153266150b1565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061536882614977565b915061537383614977565b9250826153835761538261532e565b5b828204905092915050565b7f4552525f494e56414c49445f5354415445000000000000000000000000000000600082015250565b60006153c4601183614a71565b91506153cf8261538e565b602082019050919050565b600060208201905081810360008301526153f3816153b7565b9050919050565b7f4552525f414c52454144595f4c4f434b45440000000000000000000000000000600082015250565b6000615430601283614a71565b915061543b826153fa565b602082019050919050565b6000602082019050818103600083015261545f81615423565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4552525f4f5645525350454e4400000000000000000000000000000000000000600082015250565b60006154cb600d83614a71565b91506154d682615495565b602082019050919050565b600060208201905081810360008301526154fa816154be565b9050919050565b61550a8161506b565b811461551557600080fd5b50565b60008151905061552781615501565b92915050565b600060208284031215615543576155426148e7565b5b600061555184828501615518565b9150509291505056fea2646970667358221220210fd6113e7b31a5e5704d8e47b5f99156628cc7a960bf596d7189af1987781764736f6c63430008120033