diff --git a/src/adapter/factories/mocks/ERC1155MetaMintBurnMock__factory.d.ts b/src/adapter/factories/mocks/ERC1155MetaMintBurnMock__factory.d.ts index bef27ac..2613739 100644 --- a/src/adapter/factories/mocks/ERC1155MetaMintBurnMock__factory.d.ts +++ b/src/adapter/factories/mocks/ERC1155MetaMintBurnMock__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155MetaMintBurnMock__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC1155MetaMintBurnMock; connect(signer: Signer): ERC1155MetaMintBurnMock__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200418538038062004185833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b613e1280620003736000396000f3fe608060405234801561001057600080fd5b50600436106101505760003560e01c8063a22cb465116100cd578063d7a0ad9011610081578063f242432a11610066578063f242432a1461038f578063f5d4c820146103a2578063fa4e12d7146103b557610150565b8063d7a0ad9014610333578063e985e9c51461034657610150565b8063a3f091f5116100b2578063a3f091f5146102fa578063bd7a6c411461030d578063ce0b514b1461032057610150565b8063a22cb465146102d4578063a3d4926e146102e757610150565b80632d0335ab11610124578063437ecbe911610109578063437ecbe9146102995780634e1273f4146102ac5780636c0360eb146102cc57610150565b80632d0335ab1461024e5780632eb2c2d61461028457610150565b8062fdd58e146101dd57806301ffc9a71461020357806306fdde03146102265780630e89341c1461023b575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f455243313135354d6574614d696e744275726e4d6f636b3a20494e56414c494460448201527f5f4d4554484f440000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101f06101eb366004612e33565b6103c8565b6040519081526020015b60405180910390f35b610216610211366004612e8d565b6103fe565b60405190151581526020016101fa565b61022e610409565b6040516101fa9190612f18565b61022e610249366004612f2b565b610497565b6101f061025c366004612f44565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b610297610292366004613105565b6104cb565b005b6102976102a73660046131b3565b61066f565b6102bf6102ba3660046131e8565b61067f565b6040516101fa91906132e5565b61022e61081f565b6102976102e2366004613306565b61082c565b6102976102f536600461333f565b6108c3565b610297610308366004613400565b610af5565b61029761031b366004613463565b610b07565b61029761032e3660046134d9565b610b12565b610297610341366004613553565b610c80565b6102166103543660046135e2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61029761039d366004613610565b610c8c565b6102976103b0366004613679565b610e29565b6102166103c33660046136e8565b610f80565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103f8826117c9565b6004805461041690613739565b80601f016020809104026020016040519081016040528092919081815260200182805461044290613739565b801561048f5780601f106104645761010080835404028352916020019161048f565b820191906000526020600020905b81548152906001019060200180831161047257829003601f168201915b505050505081565b606060036104a483611825565b6040516020016104b59291906137a8565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff8616148061051f575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff841661064e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016101d4565b61065a85858585611985565b610668858585855a86611bea565b5050505050565b61067a838383611d69565b505050565b60608151835114610712576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016101d4565b6000835167ffffffffffffffff81111561072e5761072e612f61565b604051908082528060200260200182016040528015610757578160200160208202803683370190505b50905060005b84518110156108175760008086838151811061077b5761077b6138b5565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107d1576107d16138b5565b60200260200101518152602001908152602001600020548282815181106107fa576107fa6138b5565b60209081029190910101528061080f81613913565b91505061075d565b509392505050565b6003805461041690613739565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101d4565b60606109a960405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a8b89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c6040516020016109e7919061394b565b604051602081830303815290604052805190602001208c604051602001610a0e919061394b565b604051602081830303815290604052805190602001208c610a30576000610a33565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e07565b9050610a9989898989611985565b8415610adc5780806020019051810190610ab39190613a55565b8094508193505050610acd89898989866020015188611bea565b610ad78983612097565b610aea565b610aea898989895a86611bea565b505050505050505050565b610b018484848461240a565b50505050565b61067a8383836124b2565b73ffffffffffffffffffffffffffffffffffffffff8516610bb5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016101d4565b6060610bf860405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3089857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a30576000610a33565b9050610c3e8989898961267e565b8415610c725780806020019051810190610c589190613a55565b8094508193505050610acd89898989866020015188612759565b610aea898989895a86612759565b610b01848484846128d8565b3373ffffffffffffffffffffffffffffffffffffffff86161480610ce0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610d6c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff8416610e0f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016101d4565b610e1b8585858561267e565b610668858585855a86612759565b6000610eb486837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610e5f576000610e62565b60015b89610e6e576000610e71565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610a77565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610f7857600081806020019051810190610f6a9190613aaf565b9050610f768782612097565b505b505050505050565b600080825111611038576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101d4565b73ffffffffffffffffffffffffffffffffffffffff85166110db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101d4565b60006110e683612aae565b60f81c90506005811061117b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b60008160ff16600581111561119257611192613ae4565b90506000808080808560058111156111ac576111ac613ae4565b03611239576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101d4565b600185600581111561124d5761124d613ae4565b036113bf5787516061146112e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b6112ee886000612bb1565b92506112fb886020612bb1565b915087604081518110611310576113106138b5565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561136d573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506117c19650505050505050565b60028560058111156113d3576113d3613ae4565b03611539578751606114611469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b611474886000612bb1565b9250611481886020612bb1565b915087604081518110611496576114966138b5565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a00161134b565b600385600581111561154d5761154d613ae4565b03611639576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906115a6908c908c90600401613b13565b602060405180830381865afa1580156115c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b600485600581111561164d5761164d613ae4565b03611739576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906116a6908d908c90600401613b55565b602060405180830381865afa1580156116c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161181c57506001919050565b6103f882612c64565b60608160000361186857505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611892578061187c81613913565b915061188b9050600a83613b6e565b915061186c565b60008167ffffffffffffffff8111156118ad576118ad612f61565b6040519080825280601f01601f1916602001820160405280156118d7576020820181803683370190505b509050815b851561197c576118ed600182613ba9565b905060006118fc600a88613b6e565b61190790600a613bbc565b6119119088613ba9565b61191c906030613bd3565b905060008160f81b905080848481518110611939576119396138b5565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611973600a89613b6e565b975050506118dc565b50949350505050565b8051825114611a16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016101d4565b815160005b81811015611b6457828181518110611a3557611a356138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611a8f57611a8f6138b5565b602002602001015181526020019081526020016000206000828254611ab49190613ba9565b92505081905550828181518110611acd57611acd6138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611b2757611b276138b5565b602002602001015181526020019081526020016000206000828254611b4c9190613bec565b90915550819050611b5c81613913565b915050611a1b565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611bdb929190613bff565b60405180910390a45050505050565b611c098573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611c52959493929190613c24565b60206040518083038160008887f1158015611c71573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c969190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611da7908490613ba9565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b60608083806020019051810190611e1e9190613c8f565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e56836041612bb1565b9050818110801590611e715750611e6e826064613bec565b81105b611efd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016101d4565b6000611f3986838780519060200120604051602001611f1e93929190613cc6565b60405160208183030381529060405280519060200120612d3b565b90506000868387604051602001611f5293929190613ced565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611f8d836001613bec565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611fe2856001613bec565b60405190815260200160405180910390a2611fff89838388610f80565b61208b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016101d4565b50505050509392505050565b60006120a68260600151612aae565b60f81c90506002811061213b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016101d4565b60008160ff16600281111561215257612152613ae4565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff161561218857866040015161218a565b335b925060008560028111156121a0576121a0613ae4565b036122b75786606001518060200190518101906121bd9190613d24565b90945091503073ffffffffffffffffffffffffffffffffffffffff85160361220d576121eb8884848461267e565b6122088884845a8560405180602001604052806000815250612759565b612400565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b15801561229a57600080fd5b505af11580156122ae573d6000803e3d6000fd5b50505050612400565b86606001518060200190518101906122cf9190613d52565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612350573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123749190613d6f565b612400576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016101d4565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832086845290915281208054849290612448908490613bec565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610b0160008585855a86612759565b815181518114612544576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b60005b818110156125f857828181518110612561576125616138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106125bb576125bb6138b5565b6020026020010151815260200190815260200160002060008282546125e09190613ba9565b909155508190506125f081613913565b915050612547565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612670929190613bff565b60405180910390a450505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906126bc908490613ba9565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906126ff908490613bec565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612670565b6127788573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016127c1959493929190613d8c565b60206040518083038160008887f11580156127e0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906128059190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016101d4565b8151835114612969576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b825160005b81811015612a1f57838181518110612988576129886138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106129e2576129e26138b5565b602002602001015181526020019081526020016000206000828254612a079190613bec565b90915550819050612a1781613913565b91505061296e565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051612a97929190613bff565b60405180910390a461066860008686865a87611bea565b600080825111612b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101d4565b8160018351612b4f9190613ba9565b81518110612b5f57612b5f6138b5565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612bbe826020613bec565b83511015612c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101d4565b612c59602083613bec565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601612cb757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103f8565b6000813f8015801590612d3457507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612dc892919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612df193929190613cc6565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff81168114612e3057600080fd5b50565b60008060408385031215612e4657600080fd5b8235612e5181612e0e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612e3057600080fd5b600060208284031215612e9f57600080fd5b8135612d3481612e5f565b60005b83811015612ec5578181015183820152602001612ead565b50506000910152565b60008151808452612ee6816020860160208601612eaa565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000612d346020830184612ece565b600060208284031215612f3d57600080fd5b5035919050565b600060208284031215612f5657600080fd5b8135612d3481612e0e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612fd757612fd7612f61565b604052919050565b600067ffffffffffffffff821115612ff957612ff9612f61565b5060051b60200190565b600082601f83011261301457600080fd5b8135602061302961302483612fdf565b612f90565b82815260059290921b8401810191818101908684111561304857600080fd5b8286015b84811015613063578035835291830191830161304c565b509695505050505050565b600067ffffffffffffffff82111561308857613088612f61565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126130c557600080fd5b81356130d36130248261306e565b8181528460208386010111156130e857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561311d57600080fd5b853561312881612e0e565b9450602086013561313881612e0e565b9350604086013567ffffffffffffffff8082111561315557600080fd5b61316189838a01613003565b9450606088013591508082111561317757600080fd5b61318389838a01613003565b9350608088013591508082111561319957600080fd5b506131a6888289016130b4565b9150509295509295909350565b6000806000606084860312156131c857600080fd5b83356131d381612e0e565b95602085013595506040909401359392505050565b600080604083850312156131fb57600080fd5b823567ffffffffffffffff8082111561321357600080fd5b818501915085601f83011261322757600080fd5b8135602061323761302483612fdf565b82815260059290921b8401810191818101908984111561325657600080fd5b948201945b8386101561327d57853561326e81612e0e565b8252948201949082019061325b565b9650508601359250508082111561329357600080fd5b506132a085828601613003565b9150509250929050565b600081518084526020808501945080840160005b838110156132da578151875295820195908201906001016132be565b509495945050505050565b602081526000612d3460208301846132aa565b8015158114612e3057600080fd5b6000806040838503121561331957600080fd5b823561332481612e0e565b91506020830135613334816132f8565b809150509250929050565b60008060008060008060c0878903121561335857600080fd5b863561336381612e0e565b9550602087013561337381612e0e565b9450604087013567ffffffffffffffff8082111561339057600080fd5b61339c8a838b01613003565b955060608901359150808211156133b257600080fd5b6133be8a838b01613003565b9450608089013591506133d0826132f8565b90925060a088013590808211156133e657600080fd5b506133f389828a016130b4565b9150509295509295509295565b6000806000806080858703121561341657600080fd5b843561342181612e0e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561344b57600080fd5b613457878288016130b4565b91505092959194509250565b60008060006060848603121561347857600080fd5b833561348381612e0e565b9250602084013567ffffffffffffffff808211156134a057600080fd5b6134ac87838801613003565b935060408601359150808211156134c257600080fd5b506134cf86828701613003565b9150509250925092565b60008060008060008060c087890312156134f257600080fd5b86356134fd81612e0e565b9550602087013561350d81612e0e565b94506040870135935060608701359250608087013561352b816132f8565b915060a087013567ffffffffffffffff81111561354757600080fd5b6133f389828a016130b4565b6000806000806080858703121561356957600080fd5b843561357481612e0e565b9350602085013567ffffffffffffffff8082111561359157600080fd5b61359d88838901613003565b945060408701359150808211156135b357600080fd5b6135bf88838901613003565b935060608701359150808211156135d557600080fd5b50613457878288016130b4565b600080604083850312156135f557600080fd5b823561360081612e0e565b9150602083013561333481612e0e565b600080600080600060a0868803121561362857600080fd5b853561363381612e0e565b9450602086013561364381612e0e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561366d57600080fd5b6131a6888289016130b4565b600080600080600060a0868803121561369157600080fd5b853561369c81612e0e565b945060208601356136ac81612e0e565b935060408601356136bc816132f8565b925060608601356136cc816132f8565b9150608086013567ffffffffffffffff81111561366d57600080fd5b600080600080608085870312156136fe57600080fd5b843561370981612e0e565b935060208501359250604085013567ffffffffffffffff8082111561372d57600080fd5b6135bf888389016130b4565b600181811c9082168061374d57607f821691505b602082108103613786577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000815161379e818560208601612eaa565b9290920192915050565b600080845481600182811c9150808316806137c457607f831692505b602080841082036137fc577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613810576001811461384357613870565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613870565b60008b81526020902060005b868110156138685781548b82015290850190830161384f565b505084890196505b5050505050506138ac613883828661378c565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613944576139446138e4565b5060010190565b815160009082906020808601845b8381101561397557815185529382019390820190600101613959565b50929695505050505050565b600082601f83011261399257600080fd5b81516139a06130248261306e565b8181528460208386010111156139b557600080fd5b6117c1826020830160208701612eaa565b6000608082840312156139d857600080fd5b6040516080810167ffffffffffffffff82821081831117156139fc576139fc612f61565b81604052829350845183526020850151602084015260408501519150613a2182612e0e565b8160408401526060850151915080821115613a3b57600080fd5b50613a4885828601613981565b6060830152505092915050565b60008060408385031215613a6857600080fd5b825167ffffffffffffffff80821115613a8057600080fd5b613a8c868387016139c6565b93506020850151915080821115613aa257600080fd5b506132a085828601613981565b600060208284031215613ac157600080fd5b815167ffffffffffffffff811115613ad857600080fd5b6117c1848285016139c6565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613b266040830185612ece565b82810360208401526138ac8185612ece565b600060208284031215613b4a57600080fd5b8151612d3481612e5f565b8281526040602082015260006117c16040830184612ece565b600082613ba4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103f8576103f86138e4565b80820281158282048414176103f8576103f86138e4565b60ff81811683821601908111156103f8576103f86138e4565b808201808211156103f8576103f86138e4565b604081526000613c1260408301856132aa565b82810360208401526138ac81856132aa565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152613c5d60a08301866132aa565b8281036060840152613c6f81866132aa565b90508281036080840152613c838185612ece565b98975050505050505050565b60008060408385031215613ca257600080fd5b825167ffffffffffffffff80821115613cba57600080fd5b613a8c86838701613981565b60008451613cd8818460208901612eaa565b91909101928352506020820152604001919050565b60008451613cff818460208901612eaa565b82018481528351613d17816020808501908801612eaa565b0160200195945050505050565b60008060408385031215613d3757600080fd5b8251613d4281612e0e565b6020939093015192949293505050565b600060208284031215613d6457600080fd5b8151612d3481612e0e565b600060208284031215613d8157600080fd5b8151612d34816132f8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152613dd160a0830184612ece565b97965050505050505056fea26469706673582212205306b4e949a6923f7983043c5127cdc6d23f300b14663f2cafd0d536e15009c564736f6c63430008120033"; + static readonly bytecode = "0x60806040523480156200001157600080fd5b506040516200418538038062004185833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b613e1280620003736000396000f3fe608060405234801561001057600080fd5b50600436106101505760003560e01c8063a22cb465116100cd578063d7a0ad9011610081578063f242432a11610066578063f242432a1461038f578063f5d4c820146103a2578063fa4e12d7146103b557610150565b8063d7a0ad9014610333578063e985e9c51461034657610150565b8063a3f091f5116100b2578063a3f091f5146102fa578063bd7a6c411461030d578063ce0b514b1461032057610150565b8063a22cb465146102d4578063a3d4926e146102e757610150565b80632d0335ab11610124578063437ecbe911610109578063437ecbe9146102995780634e1273f4146102ac5780636c0360eb146102cc57610150565b80632d0335ab1461024e5780632eb2c2d61461028457610150565b8062fdd58e146101dd57806301ffc9a71461020357806306fdde03146102265780630e89341c1461023b575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f455243313135354d6574614d696e744275726e4d6f636b3a20494e56414c494460448201527f5f4d4554484f440000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101f06101eb366004612e33565b6103c8565b6040519081526020015b60405180910390f35b610216610211366004612e8d565b6103fe565b60405190151581526020016101fa565b61022e610409565b6040516101fa9190612f18565b61022e610249366004612f2b565b610497565b6101f061025c366004612f44565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b610297610292366004613105565b6104cb565b005b6102976102a73660046131b3565b61066f565b6102bf6102ba3660046131e8565b61067f565b6040516101fa91906132e5565b61022e61081f565b6102976102e2366004613306565b61082c565b6102976102f536600461333f565b6108c3565b610297610308366004613400565b610af5565b61029761031b366004613463565b610b07565b61029761032e3660046134d9565b610b12565b610297610341366004613553565b610c80565b6102166103543660046135e2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61029761039d366004613610565b610c8c565b6102976103b0366004613679565b610e29565b6102166103c33660046136e8565b610f80565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103f8826117c9565b6004805461041690613739565b80601f016020809104026020016040519081016040528092919081815260200182805461044290613739565b801561048f5780601f106104645761010080835404028352916020019161048f565b820191906000526020600020905b81548152906001019060200180831161047257829003601f168201915b505050505081565b606060036104a483611825565b6040516020016104b59291906137a8565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff8616148061051f575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff841661064e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016101d4565b61065a85858585611985565b610668858585855a86611bea565b5050505050565b61067a838383611d69565b505050565b60608151835114610712576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016101d4565b6000835167ffffffffffffffff81111561072e5761072e612f61565b604051908082528060200260200182016040528015610757578160200160208202803683370190505b50905060005b84518110156108175760008086838151811061077b5761077b6138b5565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107d1576107d16138b5565b60200260200101518152602001908152602001600020548282815181106107fa576107fa6138b5565b60209081029190910101528061080f81613913565b91505061075d565b509392505050565b6003805461041690613739565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101d4565b60606109a960405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a8b89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c6040516020016109e7919061394b565b604051602081830303815290604052805190602001208c604051602001610a0e919061394b565b604051602081830303815290604052805190602001208c610a30576000610a33565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e07565b9050610a9989898989611985565b8415610adc5780806020019051810190610ab39190613a55565b8094508193505050610acd89898989866020015188611bea565b610ad78983612097565b610aea565b610aea898989895a86611bea565b505050505050505050565b610b018484848461240a565b50505050565b61067a8383836124b2565b73ffffffffffffffffffffffffffffffffffffffff8516610bb5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016101d4565b6060610bf860405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3089857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a30576000610a33565b9050610c3e8989898961267e565b8415610c725780806020019051810190610c589190613a55565b8094508193505050610acd89898989866020015188612759565b610aea898989895a86612759565b610b01848484846128d8565b3373ffffffffffffffffffffffffffffffffffffffff86161480610ce0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610d6c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff8416610e0f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016101d4565b610e1b8585858561267e565b610668858585855a86612759565b6000610eb486837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610e5f576000610e62565b60015b89610e6e576000610e71565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610a77565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610f7857600081806020019051810190610f6a9190613aaf565b9050610f768782612097565b505b505050505050565b600080825111611038576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101d4565b73ffffffffffffffffffffffffffffffffffffffff85166110db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101d4565b60006110e683612aae565b60f81c90506005811061117b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b60008160ff16600581111561119257611192613ae4565b90506000808080808560058111156111ac576111ac613ae4565b03611239576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101d4565b600185600581111561124d5761124d613ae4565b036113bf5787516061146112e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b6112ee886000612bb1565b92506112fb886020612bb1565b915087604081518110611310576113106138b5565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561136d573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506117c19650505050505050565b60028560058111156113d3576113d3613ae4565b03611539578751606114611469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b611474886000612bb1565b9250611481886020612bb1565b915087604081518110611496576114966138b5565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a00161134b565b600385600581111561154d5761154d613ae4565b03611639576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906115a6908c908c90600401613b13565b602060405180830381865afa1580156115c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b600485600581111561164d5761164d613ae4565b03611739576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906116a6908d908c90600401613b55565b602060405180830381865afa1580156116c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161181c57506001919050565b6103f882612c64565b60608160000361186857505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611892578061187c81613913565b915061188b9050600a83613b6e565b915061186c565b60008167ffffffffffffffff8111156118ad576118ad612f61565b6040519080825280601f01601f1916602001820160405280156118d7576020820181803683370190505b509050815b851561197c576118ed600182613ba9565b905060006118fc600a88613b6e565b61190790600a613bbc565b6119119088613ba9565b61191c906030613bd3565b905060008160f81b905080848481518110611939576119396138b5565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611973600a89613b6e565b975050506118dc565b50949350505050565b8051825114611a16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016101d4565b815160005b81811015611b6457828181518110611a3557611a356138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611a8f57611a8f6138b5565b602002602001015181526020019081526020016000206000828254611ab49190613ba9565b92505081905550828181518110611acd57611acd6138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611b2757611b276138b5565b602002602001015181526020019081526020016000206000828254611b4c9190613bec565b90915550819050611b5c81613913565b915050611a1b565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611bdb929190613bff565b60405180910390a45050505050565b611c098573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611c52959493929190613c24565b60206040518083038160008887f1158015611c71573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c969190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611da7908490613ba9565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b60608083806020019051810190611e1e9190613c8f565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e56836041612bb1565b9050818110801590611e715750611e6e826064613bec565b81105b611efd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016101d4565b6000611f3986838780519060200120604051602001611f1e93929190613cc6565b60405160208183030381529060405280519060200120612d3b565b90506000868387604051602001611f5293929190613ced565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611f8d836001613bec565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611fe2856001613bec565b60405190815260200160405180910390a2611fff89838388610f80565b61208b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016101d4565b50505050509392505050565b60006120a68260600151612aae565b60f81c90506002811061213b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016101d4565b60008160ff16600281111561215257612152613ae4565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff161561218857866040015161218a565b335b925060008560028111156121a0576121a0613ae4565b036122b75786606001518060200190518101906121bd9190613d24565b90945091503073ffffffffffffffffffffffffffffffffffffffff85160361220d576121eb8884848461267e565b6122088884845a8560405180602001604052806000815250612759565b612400565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b15801561229a57600080fd5b505af11580156122ae573d6000803e3d6000fd5b50505050612400565b86606001518060200190518101906122cf9190613d52565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612350573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123749190613d6f565b612400576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016101d4565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832086845290915281208054849290612448908490613bec565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610b0160008585855a86612759565b815181518114612544576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b60005b818110156125f857828181518110612561576125616138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106125bb576125bb6138b5565b6020026020010151815260200190815260200160002060008282546125e09190613ba9565b909155508190506125f081613913565b915050612547565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612670929190613bff565b60405180910390a450505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906126bc908490613ba9565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906126ff908490613bec565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612670565b6127788573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016127c1959493929190613d8c565b60206040518083038160008887f11580156127e0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906128059190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016101d4565b8151835114612969576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b825160005b81811015612a1f57838181518110612988576129886138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106129e2576129e26138b5565b602002602001015181526020019081526020016000206000828254612a079190613bec565b90915550819050612a1781613913565b91505061296e565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051612a97929190613bff565b60405180910390a461066860008686865a87611bea565b600080825111612b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101d4565b8160018351612b4f9190613ba9565b81518110612b5f57612b5f6138b5565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612bbe826020613bec565b83511015612c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101d4565b612c59602083613bec565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601612cb757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103f8565b6000813f8015801590612d3457507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612dc892919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612df193929190613cc6565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff81168114612e3057600080fd5b50565b60008060408385031215612e4657600080fd5b8235612e5181612e0e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612e3057600080fd5b600060208284031215612e9f57600080fd5b8135612d3481612e5f565b60005b83811015612ec5578181015183820152602001612ead565b50506000910152565b60008151808452612ee6816020860160208601612eaa565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000612d346020830184612ece565b600060208284031215612f3d57600080fd5b5035919050565b600060208284031215612f5657600080fd5b8135612d3481612e0e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612fd757612fd7612f61565b604052919050565b600067ffffffffffffffff821115612ff957612ff9612f61565b5060051b60200190565b600082601f83011261301457600080fd5b8135602061302961302483612fdf565b612f90565b82815260059290921b8401810191818101908684111561304857600080fd5b8286015b84811015613063578035835291830191830161304c565b509695505050505050565b600067ffffffffffffffff82111561308857613088612f61565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126130c557600080fd5b81356130d36130248261306e565b8181528460208386010111156130e857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561311d57600080fd5b853561312881612e0e565b9450602086013561313881612e0e565b9350604086013567ffffffffffffffff8082111561315557600080fd5b61316189838a01613003565b9450606088013591508082111561317757600080fd5b61318389838a01613003565b9350608088013591508082111561319957600080fd5b506131a6888289016130b4565b9150509295509295909350565b6000806000606084860312156131c857600080fd5b83356131d381612e0e565b95602085013595506040909401359392505050565b600080604083850312156131fb57600080fd5b823567ffffffffffffffff8082111561321357600080fd5b818501915085601f83011261322757600080fd5b8135602061323761302483612fdf565b82815260059290921b8401810191818101908984111561325657600080fd5b948201945b8386101561327d57853561326e81612e0e565b8252948201949082019061325b565b9650508601359250508082111561329357600080fd5b506132a085828601613003565b9150509250929050565b600081518084526020808501945080840160005b838110156132da578151875295820195908201906001016132be565b509495945050505050565b602081526000612d3460208301846132aa565b8015158114612e3057600080fd5b6000806040838503121561331957600080fd5b823561332481612e0e565b91506020830135613334816132f8565b809150509250929050565b60008060008060008060c0878903121561335857600080fd5b863561336381612e0e565b9550602087013561337381612e0e565b9450604087013567ffffffffffffffff8082111561339057600080fd5b61339c8a838b01613003565b955060608901359150808211156133b257600080fd5b6133be8a838b01613003565b9450608089013591506133d0826132f8565b90925060a088013590808211156133e657600080fd5b506133f389828a016130b4565b9150509295509295509295565b6000806000806080858703121561341657600080fd5b843561342181612e0e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561344b57600080fd5b613457878288016130b4565b91505092959194509250565b60008060006060848603121561347857600080fd5b833561348381612e0e565b9250602084013567ffffffffffffffff808211156134a057600080fd5b6134ac87838801613003565b935060408601359150808211156134c257600080fd5b506134cf86828701613003565b9150509250925092565b60008060008060008060c087890312156134f257600080fd5b86356134fd81612e0e565b9550602087013561350d81612e0e565b94506040870135935060608701359250608087013561352b816132f8565b915060a087013567ffffffffffffffff81111561354757600080fd5b6133f389828a016130b4565b6000806000806080858703121561356957600080fd5b843561357481612e0e565b9350602085013567ffffffffffffffff8082111561359157600080fd5b61359d88838901613003565b945060408701359150808211156135b357600080fd5b6135bf88838901613003565b935060608701359150808211156135d557600080fd5b50613457878288016130b4565b600080604083850312156135f557600080fd5b823561360081612e0e565b9150602083013561333481612e0e565b600080600080600060a0868803121561362857600080fd5b853561363381612e0e565b9450602086013561364381612e0e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561366d57600080fd5b6131a6888289016130b4565b600080600080600060a0868803121561369157600080fd5b853561369c81612e0e565b945060208601356136ac81612e0e565b935060408601356136bc816132f8565b925060608601356136cc816132f8565b9150608086013567ffffffffffffffff81111561366d57600080fd5b600080600080608085870312156136fe57600080fd5b843561370981612e0e565b935060208501359250604085013567ffffffffffffffff8082111561372d57600080fd5b6135bf888389016130b4565b600181811c9082168061374d57607f821691505b602082108103613786577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000815161379e818560208601612eaa565b9290920192915050565b600080845481600182811c9150808316806137c457607f831692505b602080841082036137fc577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613810576001811461384357613870565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613870565b60008b81526020902060005b868110156138685781548b82015290850190830161384f565b505084890196505b5050505050506138ac613883828661378c565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613944576139446138e4565b5060010190565b815160009082906020808601845b8381101561397557815185529382019390820190600101613959565b50929695505050505050565b600082601f83011261399257600080fd5b81516139a06130248261306e565b8181528460208386010111156139b557600080fd5b6117c1826020830160208701612eaa565b6000608082840312156139d857600080fd5b6040516080810167ffffffffffffffff82821081831117156139fc576139fc612f61565b81604052829350845183526020850151602084015260408501519150613a2182612e0e565b8160408401526060850151915080821115613a3b57600080fd5b50613a4885828601613981565b6060830152505092915050565b60008060408385031215613a6857600080fd5b825167ffffffffffffffff80821115613a8057600080fd5b613a8c868387016139c6565b93506020850151915080821115613aa257600080fd5b506132a085828601613981565b600060208284031215613ac157600080fd5b815167ffffffffffffffff811115613ad857600080fd5b6117c1848285016139c6565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613b266040830185612ece565b82810360208401526138ac8185612ece565b600060208284031215613b4a57600080fd5b8151612d3481612e5f565b8281526040602082015260006117c16040830184612ece565b600082613ba4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103f8576103f86138e4565b80820281158282048414176103f8576103f86138e4565b60ff81811683821601908111156103f8576103f86138e4565b808201808211156103f8576103f86138e4565b604081526000613c1260408301856132aa565b82810360208401526138ac81856132aa565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152613c5d60a08301866132aa565b8281036060840152613c6f81866132aa565b90508281036080840152613c838185612ece565b98975050505050505050565b60008060408385031215613ca257600080fd5b825167ffffffffffffffff80821115613cba57600080fd5b613a8c86838701613981565b60008451613cd8818460208901612eaa565b91909101928352506020820152604001919050565b60008451613cff818460208901612eaa565b82018481528351613d17816020808501908801612eaa565b0160200195945050505050565b60008060408385031215613d3757600080fd5b8251613d4281612e0e565b6020939093015192949293505050565b600060208284031215613d6457600080fd5b8151612d3481612e0e565b600060208284031215613d8157600080fd5b8151612d34816132f8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152613dd160a0830184612ece565b97965050505050505056fea264697066735822122085a984cb87d1882d86be4e4f9921654af97ee515b51188027564f18c6cf69e2a64736f6c63430008120033"; static readonly abi: ({ inputs: { internalType: string; diff --git a/src/adapter/factories/mocks/ERC1155MetaMintBurnMock__factory.js b/src/adapter/factories/mocks/ERC1155MetaMintBurnMock__factory.js index c002b6f..795e192 100644 --- a/src/adapter/factories/mocks/ERC1155MetaMintBurnMock__factory.js +++ b/src/adapter/factories/mocks/ERC1155MetaMintBurnMock__factory.js @@ -645,7 +645,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x60806040523480156200001157600080fd5b506040516200418538038062004185833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b613e1280620003736000396000f3fe608060405234801561001057600080fd5b50600436106101505760003560e01c8063a22cb465116100cd578063d7a0ad9011610081578063f242432a11610066578063f242432a1461038f578063f5d4c820146103a2578063fa4e12d7146103b557610150565b8063d7a0ad9014610333578063e985e9c51461034657610150565b8063a3f091f5116100b2578063a3f091f5146102fa578063bd7a6c411461030d578063ce0b514b1461032057610150565b8063a22cb465146102d4578063a3d4926e146102e757610150565b80632d0335ab11610124578063437ecbe911610109578063437ecbe9146102995780634e1273f4146102ac5780636c0360eb146102cc57610150565b80632d0335ab1461024e5780632eb2c2d61461028457610150565b8062fdd58e146101dd57806301ffc9a71461020357806306fdde03146102265780630e89341c1461023b575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f455243313135354d6574614d696e744275726e4d6f636b3a20494e56414c494460448201527f5f4d4554484f440000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101f06101eb366004612e33565b6103c8565b6040519081526020015b60405180910390f35b610216610211366004612e8d565b6103fe565b60405190151581526020016101fa565b61022e610409565b6040516101fa9190612f18565b61022e610249366004612f2b565b610497565b6101f061025c366004612f44565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b610297610292366004613105565b6104cb565b005b6102976102a73660046131b3565b61066f565b6102bf6102ba3660046131e8565b61067f565b6040516101fa91906132e5565b61022e61081f565b6102976102e2366004613306565b61082c565b6102976102f536600461333f565b6108c3565b610297610308366004613400565b610af5565b61029761031b366004613463565b610b07565b61029761032e3660046134d9565b610b12565b610297610341366004613553565b610c80565b6102166103543660046135e2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61029761039d366004613610565b610c8c565b6102976103b0366004613679565b610e29565b6102166103c33660046136e8565b610f80565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103f8826117c9565b6004805461041690613739565b80601f016020809104026020016040519081016040528092919081815260200182805461044290613739565b801561048f5780601f106104645761010080835404028352916020019161048f565b820191906000526020600020905b81548152906001019060200180831161047257829003601f168201915b505050505081565b606060036104a483611825565b6040516020016104b59291906137a8565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff8616148061051f575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff841661064e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016101d4565b61065a85858585611985565b610668858585855a86611bea565b5050505050565b61067a838383611d69565b505050565b60608151835114610712576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016101d4565b6000835167ffffffffffffffff81111561072e5761072e612f61565b604051908082528060200260200182016040528015610757578160200160208202803683370190505b50905060005b84518110156108175760008086838151811061077b5761077b6138b5565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107d1576107d16138b5565b60200260200101518152602001908152602001600020548282815181106107fa576107fa6138b5565b60209081029190910101528061080f81613913565b91505061075d565b509392505050565b6003805461041690613739565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101d4565b60606109a960405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a8b89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c6040516020016109e7919061394b565b604051602081830303815290604052805190602001208c604051602001610a0e919061394b565b604051602081830303815290604052805190602001208c610a30576000610a33565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e07565b9050610a9989898989611985565b8415610adc5780806020019051810190610ab39190613a55565b8094508193505050610acd89898989866020015188611bea565b610ad78983612097565b610aea565b610aea898989895a86611bea565b505050505050505050565b610b018484848461240a565b50505050565b61067a8383836124b2565b73ffffffffffffffffffffffffffffffffffffffff8516610bb5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016101d4565b6060610bf860405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3089857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a30576000610a33565b9050610c3e8989898961267e565b8415610c725780806020019051810190610c589190613a55565b8094508193505050610acd89898989866020015188612759565b610aea898989895a86612759565b610b01848484846128d8565b3373ffffffffffffffffffffffffffffffffffffffff86161480610ce0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610d6c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff8416610e0f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016101d4565b610e1b8585858561267e565b610668858585855a86612759565b6000610eb486837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610e5f576000610e62565b60015b89610e6e576000610e71565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610a77565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610f7857600081806020019051810190610f6a9190613aaf565b9050610f768782612097565b505b505050505050565b600080825111611038576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101d4565b73ffffffffffffffffffffffffffffffffffffffff85166110db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101d4565b60006110e683612aae565b60f81c90506005811061117b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b60008160ff16600581111561119257611192613ae4565b90506000808080808560058111156111ac576111ac613ae4565b03611239576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101d4565b600185600581111561124d5761124d613ae4565b036113bf5787516061146112e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b6112ee886000612bb1565b92506112fb886020612bb1565b915087604081518110611310576113106138b5565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561136d573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506117c19650505050505050565b60028560058111156113d3576113d3613ae4565b03611539578751606114611469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b611474886000612bb1565b9250611481886020612bb1565b915087604081518110611496576114966138b5565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a00161134b565b600385600581111561154d5761154d613ae4565b03611639576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906115a6908c908c90600401613b13565b602060405180830381865afa1580156115c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b600485600581111561164d5761164d613ae4565b03611739576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906116a6908d908c90600401613b55565b602060405180830381865afa1580156116c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161181c57506001919050565b6103f882612c64565b60608160000361186857505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611892578061187c81613913565b915061188b9050600a83613b6e565b915061186c565b60008167ffffffffffffffff8111156118ad576118ad612f61565b6040519080825280601f01601f1916602001820160405280156118d7576020820181803683370190505b509050815b851561197c576118ed600182613ba9565b905060006118fc600a88613b6e565b61190790600a613bbc565b6119119088613ba9565b61191c906030613bd3565b905060008160f81b905080848481518110611939576119396138b5565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611973600a89613b6e565b975050506118dc565b50949350505050565b8051825114611a16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016101d4565b815160005b81811015611b6457828181518110611a3557611a356138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611a8f57611a8f6138b5565b602002602001015181526020019081526020016000206000828254611ab49190613ba9565b92505081905550828181518110611acd57611acd6138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611b2757611b276138b5565b602002602001015181526020019081526020016000206000828254611b4c9190613bec565b90915550819050611b5c81613913565b915050611a1b565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611bdb929190613bff565b60405180910390a45050505050565b611c098573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611c52959493929190613c24565b60206040518083038160008887f1158015611c71573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c969190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611da7908490613ba9565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b60608083806020019051810190611e1e9190613c8f565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e56836041612bb1565b9050818110801590611e715750611e6e826064613bec565b81105b611efd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016101d4565b6000611f3986838780519060200120604051602001611f1e93929190613cc6565b60405160208183030381529060405280519060200120612d3b565b90506000868387604051602001611f5293929190613ced565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611f8d836001613bec565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611fe2856001613bec565b60405190815260200160405180910390a2611fff89838388610f80565b61208b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016101d4565b50505050509392505050565b60006120a68260600151612aae565b60f81c90506002811061213b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016101d4565b60008160ff16600281111561215257612152613ae4565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff161561218857866040015161218a565b335b925060008560028111156121a0576121a0613ae4565b036122b75786606001518060200190518101906121bd9190613d24565b90945091503073ffffffffffffffffffffffffffffffffffffffff85160361220d576121eb8884848461267e565b6122088884845a8560405180602001604052806000815250612759565b612400565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b15801561229a57600080fd5b505af11580156122ae573d6000803e3d6000fd5b50505050612400565b86606001518060200190518101906122cf9190613d52565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612350573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123749190613d6f565b612400576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016101d4565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832086845290915281208054849290612448908490613bec565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610b0160008585855a86612759565b815181518114612544576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b60005b818110156125f857828181518110612561576125616138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106125bb576125bb6138b5565b6020026020010151815260200190815260200160002060008282546125e09190613ba9565b909155508190506125f081613913565b915050612547565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612670929190613bff565b60405180910390a450505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906126bc908490613ba9565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906126ff908490613bec565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612670565b6127788573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016127c1959493929190613d8c565b60206040518083038160008887f11580156127e0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906128059190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016101d4565b8151835114612969576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b825160005b81811015612a1f57838181518110612988576129886138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106129e2576129e26138b5565b602002602001015181526020019081526020016000206000828254612a079190613bec565b90915550819050612a1781613913565b91505061296e565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051612a97929190613bff565b60405180910390a461066860008686865a87611bea565b600080825111612b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101d4565b8160018351612b4f9190613ba9565b81518110612b5f57612b5f6138b5565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612bbe826020613bec565b83511015612c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101d4565b612c59602083613bec565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601612cb757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103f8565b6000813f8015801590612d3457507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612dc892919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612df193929190613cc6565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff81168114612e3057600080fd5b50565b60008060408385031215612e4657600080fd5b8235612e5181612e0e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612e3057600080fd5b600060208284031215612e9f57600080fd5b8135612d3481612e5f565b60005b83811015612ec5578181015183820152602001612ead565b50506000910152565b60008151808452612ee6816020860160208601612eaa565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000612d346020830184612ece565b600060208284031215612f3d57600080fd5b5035919050565b600060208284031215612f5657600080fd5b8135612d3481612e0e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612fd757612fd7612f61565b604052919050565b600067ffffffffffffffff821115612ff957612ff9612f61565b5060051b60200190565b600082601f83011261301457600080fd5b8135602061302961302483612fdf565b612f90565b82815260059290921b8401810191818101908684111561304857600080fd5b8286015b84811015613063578035835291830191830161304c565b509695505050505050565b600067ffffffffffffffff82111561308857613088612f61565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126130c557600080fd5b81356130d36130248261306e565b8181528460208386010111156130e857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561311d57600080fd5b853561312881612e0e565b9450602086013561313881612e0e565b9350604086013567ffffffffffffffff8082111561315557600080fd5b61316189838a01613003565b9450606088013591508082111561317757600080fd5b61318389838a01613003565b9350608088013591508082111561319957600080fd5b506131a6888289016130b4565b9150509295509295909350565b6000806000606084860312156131c857600080fd5b83356131d381612e0e565b95602085013595506040909401359392505050565b600080604083850312156131fb57600080fd5b823567ffffffffffffffff8082111561321357600080fd5b818501915085601f83011261322757600080fd5b8135602061323761302483612fdf565b82815260059290921b8401810191818101908984111561325657600080fd5b948201945b8386101561327d57853561326e81612e0e565b8252948201949082019061325b565b9650508601359250508082111561329357600080fd5b506132a085828601613003565b9150509250929050565b600081518084526020808501945080840160005b838110156132da578151875295820195908201906001016132be565b509495945050505050565b602081526000612d3460208301846132aa565b8015158114612e3057600080fd5b6000806040838503121561331957600080fd5b823561332481612e0e565b91506020830135613334816132f8565b809150509250929050565b60008060008060008060c0878903121561335857600080fd5b863561336381612e0e565b9550602087013561337381612e0e565b9450604087013567ffffffffffffffff8082111561339057600080fd5b61339c8a838b01613003565b955060608901359150808211156133b257600080fd5b6133be8a838b01613003565b9450608089013591506133d0826132f8565b90925060a088013590808211156133e657600080fd5b506133f389828a016130b4565b9150509295509295509295565b6000806000806080858703121561341657600080fd5b843561342181612e0e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561344b57600080fd5b613457878288016130b4565b91505092959194509250565b60008060006060848603121561347857600080fd5b833561348381612e0e565b9250602084013567ffffffffffffffff808211156134a057600080fd5b6134ac87838801613003565b935060408601359150808211156134c257600080fd5b506134cf86828701613003565b9150509250925092565b60008060008060008060c087890312156134f257600080fd5b86356134fd81612e0e565b9550602087013561350d81612e0e565b94506040870135935060608701359250608087013561352b816132f8565b915060a087013567ffffffffffffffff81111561354757600080fd5b6133f389828a016130b4565b6000806000806080858703121561356957600080fd5b843561357481612e0e565b9350602085013567ffffffffffffffff8082111561359157600080fd5b61359d88838901613003565b945060408701359150808211156135b357600080fd5b6135bf88838901613003565b935060608701359150808211156135d557600080fd5b50613457878288016130b4565b600080604083850312156135f557600080fd5b823561360081612e0e565b9150602083013561333481612e0e565b600080600080600060a0868803121561362857600080fd5b853561363381612e0e565b9450602086013561364381612e0e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561366d57600080fd5b6131a6888289016130b4565b600080600080600060a0868803121561369157600080fd5b853561369c81612e0e565b945060208601356136ac81612e0e565b935060408601356136bc816132f8565b925060608601356136cc816132f8565b9150608086013567ffffffffffffffff81111561366d57600080fd5b600080600080608085870312156136fe57600080fd5b843561370981612e0e565b935060208501359250604085013567ffffffffffffffff8082111561372d57600080fd5b6135bf888389016130b4565b600181811c9082168061374d57607f821691505b602082108103613786577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000815161379e818560208601612eaa565b9290920192915050565b600080845481600182811c9150808316806137c457607f831692505b602080841082036137fc577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613810576001811461384357613870565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613870565b60008b81526020902060005b868110156138685781548b82015290850190830161384f565b505084890196505b5050505050506138ac613883828661378c565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613944576139446138e4565b5060010190565b815160009082906020808601845b8381101561397557815185529382019390820190600101613959565b50929695505050505050565b600082601f83011261399257600080fd5b81516139a06130248261306e565b8181528460208386010111156139b557600080fd5b6117c1826020830160208701612eaa565b6000608082840312156139d857600080fd5b6040516080810167ffffffffffffffff82821081831117156139fc576139fc612f61565b81604052829350845183526020850151602084015260408501519150613a2182612e0e565b8160408401526060850151915080821115613a3b57600080fd5b50613a4885828601613981565b6060830152505092915050565b60008060408385031215613a6857600080fd5b825167ffffffffffffffff80821115613a8057600080fd5b613a8c868387016139c6565b93506020850151915080821115613aa257600080fd5b506132a085828601613981565b600060208284031215613ac157600080fd5b815167ffffffffffffffff811115613ad857600080fd5b6117c1848285016139c6565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613b266040830185612ece565b82810360208401526138ac8185612ece565b600060208284031215613b4a57600080fd5b8151612d3481612e5f565b8281526040602082015260006117c16040830184612ece565b600082613ba4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103f8576103f86138e4565b80820281158282048414176103f8576103f86138e4565b60ff81811683821601908111156103f8576103f86138e4565b808201808211156103f8576103f86138e4565b604081526000613c1260408301856132aa565b82810360208401526138ac81856132aa565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152613c5d60a08301866132aa565b8281036060840152613c6f81866132aa565b90508281036080840152613c838185612ece565b98975050505050505050565b60008060408385031215613ca257600080fd5b825167ffffffffffffffff80821115613cba57600080fd5b613a8c86838701613981565b60008451613cd8818460208901612eaa565b91909101928352506020820152604001919050565b60008451613cff818460208901612eaa565b82018481528351613d17816020808501908801612eaa565b0160200195945050505050565b60008060408385031215613d3757600080fd5b8251613d4281612e0e565b6020939093015192949293505050565b600060208284031215613d6457600080fd5b8151612d3481612e0e565b600060208284031215613d8157600080fd5b8151612d34816132f8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152613dd160a0830184612ece565b97965050505050505056fea26469706673582212205306b4e949a6923f7983043c5127cdc6d23f300b14663f2cafd0d536e15009c564736f6c63430008120033"; +const _bytecode = "0x60806040523480156200001157600080fd5b506040516200418538038062004185833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b613e1280620003736000396000f3fe608060405234801561001057600080fd5b50600436106101505760003560e01c8063a22cb465116100cd578063d7a0ad9011610081578063f242432a11610066578063f242432a1461038f578063f5d4c820146103a2578063fa4e12d7146103b557610150565b8063d7a0ad9014610333578063e985e9c51461034657610150565b8063a3f091f5116100b2578063a3f091f5146102fa578063bd7a6c411461030d578063ce0b514b1461032057610150565b8063a22cb465146102d4578063a3d4926e146102e757610150565b80632d0335ab11610124578063437ecbe911610109578063437ecbe9146102995780634e1273f4146102ac5780636c0360eb146102cc57610150565b80632d0335ab1461024e5780632eb2c2d61461028457610150565b8062fdd58e146101dd57806301ffc9a71461020357806306fdde03146102265780630e89341c1461023b575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f455243313135354d6574614d696e744275726e4d6f636b3a20494e56414c494460448201527f5f4d4554484f440000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101f06101eb366004612e33565b6103c8565b6040519081526020015b60405180910390f35b610216610211366004612e8d565b6103fe565b60405190151581526020016101fa565b61022e610409565b6040516101fa9190612f18565b61022e610249366004612f2b565b610497565b6101f061025c366004612f44565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b610297610292366004613105565b6104cb565b005b6102976102a73660046131b3565b61066f565b6102bf6102ba3660046131e8565b61067f565b6040516101fa91906132e5565b61022e61081f565b6102976102e2366004613306565b61082c565b6102976102f536600461333f565b6108c3565b610297610308366004613400565b610af5565b61029761031b366004613463565b610b07565b61029761032e3660046134d9565b610b12565b610297610341366004613553565b610c80565b6102166103543660046135e2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61029761039d366004613610565b610c8c565b6102976103b0366004613679565b610e29565b6102166103c33660046136e8565b610f80565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103f8826117c9565b6004805461041690613739565b80601f016020809104026020016040519081016040528092919081815260200182805461044290613739565b801561048f5780601f106104645761010080835404028352916020019161048f565b820191906000526020600020905b81548152906001019060200180831161047257829003601f168201915b505050505081565b606060036104a483611825565b6040516020016104b59291906137a8565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff8616148061051f575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff841661064e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016101d4565b61065a85858585611985565b610668858585855a86611bea565b5050505050565b61067a838383611d69565b505050565b60608151835114610712576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016101d4565b6000835167ffffffffffffffff81111561072e5761072e612f61565b604051908082528060200260200182016040528015610757578160200160208202803683370190505b50905060005b84518110156108175760008086838151811061077b5761077b6138b5565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107d1576107d16138b5565b60200260200101518152602001908152602001600020548282815181106107fa576107fa6138b5565b60209081029190910101528061080f81613913565b91505061075d565b509392505050565b6003805461041690613739565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101d4565b60606109a960405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a8b89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c6040516020016109e7919061394b565b604051602081830303815290604052805190602001208c604051602001610a0e919061394b565b604051602081830303815290604052805190602001208c610a30576000610a33565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e07565b9050610a9989898989611985565b8415610adc5780806020019051810190610ab39190613a55565b8094508193505050610acd89898989866020015188611bea565b610ad78983612097565b610aea565b610aea898989895a86611bea565b505050505050505050565b610b018484848461240a565b50505050565b61067a8383836124b2565b73ffffffffffffffffffffffffffffffffffffffff8516610bb5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016101d4565b6060610bf860405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3089857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a30576000610a33565b9050610c3e8989898961267e565b8415610c725780806020019051810190610c589190613a55565b8094508193505050610acd89898989866020015188612759565b610aea898989895a86612759565b610b01848484846128d8565b3373ffffffffffffffffffffffffffffffffffffffff86161480610ce0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610d6c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff8416610e0f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016101d4565b610e1b8585858561267e565b610668858585855a86612759565b6000610eb486837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610e5f576000610e62565b60015b89610e6e576000610e71565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610a77565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610f7857600081806020019051810190610f6a9190613aaf565b9050610f768782612097565b505b505050505050565b600080825111611038576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101d4565b73ffffffffffffffffffffffffffffffffffffffff85166110db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101d4565b60006110e683612aae565b60f81c90506005811061117b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b60008160ff16600581111561119257611192613ae4565b90506000808080808560058111156111ac576111ac613ae4565b03611239576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101d4565b600185600581111561124d5761124d613ae4565b036113bf5787516061146112e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b6112ee886000612bb1565b92506112fb886020612bb1565b915087604081518110611310576113106138b5565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561136d573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506117c19650505050505050565b60028560058111156113d3576113d3613ae4565b03611539578751606114611469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b611474886000612bb1565b9250611481886020612bb1565b915087604081518110611496576114966138b5565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a00161134b565b600385600581111561154d5761154d613ae4565b03611639576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906115a6908c908c90600401613b13565b602060405180830381865afa1580156115c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b600485600581111561164d5761164d613ae4565b03611739576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906116a6908d908c90600401613b55565b602060405180830381865afa1580156116c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161181c57506001919050565b6103f882612c64565b60608160000361186857505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611892578061187c81613913565b915061188b9050600a83613b6e565b915061186c565b60008167ffffffffffffffff8111156118ad576118ad612f61565b6040519080825280601f01601f1916602001820160405280156118d7576020820181803683370190505b509050815b851561197c576118ed600182613ba9565b905060006118fc600a88613b6e565b61190790600a613bbc565b6119119088613ba9565b61191c906030613bd3565b905060008160f81b905080848481518110611939576119396138b5565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611973600a89613b6e565b975050506118dc565b50949350505050565b8051825114611a16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016101d4565b815160005b81811015611b6457828181518110611a3557611a356138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611a8f57611a8f6138b5565b602002602001015181526020019081526020016000206000828254611ab49190613ba9565b92505081905550828181518110611acd57611acd6138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611b2757611b276138b5565b602002602001015181526020019081526020016000206000828254611b4c9190613bec565b90915550819050611b5c81613913565b915050611a1b565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611bdb929190613bff565b60405180910390a45050505050565b611c098573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611c52959493929190613c24565b60206040518083038160008887f1158015611c71573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c969190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611da7908490613ba9565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b60608083806020019051810190611e1e9190613c8f565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e56836041612bb1565b9050818110801590611e715750611e6e826064613bec565b81105b611efd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016101d4565b6000611f3986838780519060200120604051602001611f1e93929190613cc6565b60405160208183030381529060405280519060200120612d3b565b90506000868387604051602001611f5293929190613ced565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611f8d836001613bec565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611fe2856001613bec565b60405190815260200160405180910390a2611fff89838388610f80565b61208b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016101d4565b50505050509392505050565b60006120a68260600151612aae565b60f81c90506002811061213b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016101d4565b60008160ff16600281111561215257612152613ae4565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff161561218857866040015161218a565b335b925060008560028111156121a0576121a0613ae4565b036122b75786606001518060200190518101906121bd9190613d24565b90945091503073ffffffffffffffffffffffffffffffffffffffff85160361220d576121eb8884848461267e565b6122088884845a8560405180602001604052806000815250612759565b612400565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b15801561229a57600080fd5b505af11580156122ae573d6000803e3d6000fd5b50505050612400565b86606001518060200190518101906122cf9190613d52565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612350573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123749190613d6f565b612400576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016101d4565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832086845290915281208054849290612448908490613bec565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610b0160008585855a86612759565b815181518114612544576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b60005b818110156125f857828181518110612561576125616138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106125bb576125bb6138b5565b6020026020010151815260200190815260200160002060008282546125e09190613ba9565b909155508190506125f081613913565b915050612547565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612670929190613bff565b60405180910390a450505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906126bc908490613ba9565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906126ff908490613bec565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612670565b6127788573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016127c1959493929190613d8c565b60206040518083038160008887f11580156127e0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906128059190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016101d4565b8151835114612969576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b825160005b81811015612a1f57838181518110612988576129886138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106129e2576129e26138b5565b602002602001015181526020019081526020016000206000828254612a079190613bec565b90915550819050612a1781613913565b91505061296e565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051612a97929190613bff565b60405180910390a461066860008686865a87611bea565b600080825111612b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101d4565b8160018351612b4f9190613ba9565b81518110612b5f57612b5f6138b5565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612bbe826020613bec565b83511015612c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101d4565b612c59602083613bec565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601612cb757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103f8565b6000813f8015801590612d3457507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612dc892919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612df193929190613cc6565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff81168114612e3057600080fd5b50565b60008060408385031215612e4657600080fd5b8235612e5181612e0e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612e3057600080fd5b600060208284031215612e9f57600080fd5b8135612d3481612e5f565b60005b83811015612ec5578181015183820152602001612ead565b50506000910152565b60008151808452612ee6816020860160208601612eaa565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000612d346020830184612ece565b600060208284031215612f3d57600080fd5b5035919050565b600060208284031215612f5657600080fd5b8135612d3481612e0e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612fd757612fd7612f61565b604052919050565b600067ffffffffffffffff821115612ff957612ff9612f61565b5060051b60200190565b600082601f83011261301457600080fd5b8135602061302961302483612fdf565b612f90565b82815260059290921b8401810191818101908684111561304857600080fd5b8286015b84811015613063578035835291830191830161304c565b509695505050505050565b600067ffffffffffffffff82111561308857613088612f61565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126130c557600080fd5b81356130d36130248261306e565b8181528460208386010111156130e857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561311d57600080fd5b853561312881612e0e565b9450602086013561313881612e0e565b9350604086013567ffffffffffffffff8082111561315557600080fd5b61316189838a01613003565b9450606088013591508082111561317757600080fd5b61318389838a01613003565b9350608088013591508082111561319957600080fd5b506131a6888289016130b4565b9150509295509295909350565b6000806000606084860312156131c857600080fd5b83356131d381612e0e565b95602085013595506040909401359392505050565b600080604083850312156131fb57600080fd5b823567ffffffffffffffff8082111561321357600080fd5b818501915085601f83011261322757600080fd5b8135602061323761302483612fdf565b82815260059290921b8401810191818101908984111561325657600080fd5b948201945b8386101561327d57853561326e81612e0e565b8252948201949082019061325b565b9650508601359250508082111561329357600080fd5b506132a085828601613003565b9150509250929050565b600081518084526020808501945080840160005b838110156132da578151875295820195908201906001016132be565b509495945050505050565b602081526000612d3460208301846132aa565b8015158114612e3057600080fd5b6000806040838503121561331957600080fd5b823561332481612e0e565b91506020830135613334816132f8565b809150509250929050565b60008060008060008060c0878903121561335857600080fd5b863561336381612e0e565b9550602087013561337381612e0e565b9450604087013567ffffffffffffffff8082111561339057600080fd5b61339c8a838b01613003565b955060608901359150808211156133b257600080fd5b6133be8a838b01613003565b9450608089013591506133d0826132f8565b90925060a088013590808211156133e657600080fd5b506133f389828a016130b4565b9150509295509295509295565b6000806000806080858703121561341657600080fd5b843561342181612e0e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561344b57600080fd5b613457878288016130b4565b91505092959194509250565b60008060006060848603121561347857600080fd5b833561348381612e0e565b9250602084013567ffffffffffffffff808211156134a057600080fd5b6134ac87838801613003565b935060408601359150808211156134c257600080fd5b506134cf86828701613003565b9150509250925092565b60008060008060008060c087890312156134f257600080fd5b86356134fd81612e0e565b9550602087013561350d81612e0e565b94506040870135935060608701359250608087013561352b816132f8565b915060a087013567ffffffffffffffff81111561354757600080fd5b6133f389828a016130b4565b6000806000806080858703121561356957600080fd5b843561357481612e0e565b9350602085013567ffffffffffffffff8082111561359157600080fd5b61359d88838901613003565b945060408701359150808211156135b357600080fd5b6135bf88838901613003565b935060608701359150808211156135d557600080fd5b50613457878288016130b4565b600080604083850312156135f557600080fd5b823561360081612e0e565b9150602083013561333481612e0e565b600080600080600060a0868803121561362857600080fd5b853561363381612e0e565b9450602086013561364381612e0e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561366d57600080fd5b6131a6888289016130b4565b600080600080600060a0868803121561369157600080fd5b853561369c81612e0e565b945060208601356136ac81612e0e565b935060408601356136bc816132f8565b925060608601356136cc816132f8565b9150608086013567ffffffffffffffff81111561366d57600080fd5b600080600080608085870312156136fe57600080fd5b843561370981612e0e565b935060208501359250604085013567ffffffffffffffff8082111561372d57600080fd5b6135bf888389016130b4565b600181811c9082168061374d57607f821691505b602082108103613786577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000815161379e818560208601612eaa565b9290920192915050565b600080845481600182811c9150808316806137c457607f831692505b602080841082036137fc577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613810576001811461384357613870565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613870565b60008b81526020902060005b868110156138685781548b82015290850190830161384f565b505084890196505b5050505050506138ac613883828661378c565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613944576139446138e4565b5060010190565b815160009082906020808601845b8381101561397557815185529382019390820190600101613959565b50929695505050505050565b600082601f83011261399257600080fd5b81516139a06130248261306e565b8181528460208386010111156139b557600080fd5b6117c1826020830160208701612eaa565b6000608082840312156139d857600080fd5b6040516080810167ffffffffffffffff82821081831117156139fc576139fc612f61565b81604052829350845183526020850151602084015260408501519150613a2182612e0e565b8160408401526060850151915080821115613a3b57600080fd5b50613a4885828601613981565b6060830152505092915050565b60008060408385031215613a6857600080fd5b825167ffffffffffffffff80821115613a8057600080fd5b613a8c868387016139c6565b93506020850151915080821115613aa257600080fd5b506132a085828601613981565b600060208284031215613ac157600080fd5b815167ffffffffffffffff811115613ad857600080fd5b6117c1848285016139c6565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613b266040830185612ece565b82810360208401526138ac8185612ece565b600060208284031215613b4a57600080fd5b8151612d3481612e5f565b8281526040602082015260006117c16040830184612ece565b600082613ba4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103f8576103f86138e4565b80820281158282048414176103f8576103f86138e4565b60ff81811683821601908111156103f8576103f86138e4565b808201808211156103f8576103f86138e4565b604081526000613c1260408301856132aa565b82810360208401526138ac81856132aa565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152613c5d60a08301866132aa565b8281036060840152613c6f81866132aa565b90508281036080840152613c838185612ece565b98975050505050505050565b60008060408385031215613ca257600080fd5b825167ffffffffffffffff80821115613cba57600080fd5b613a8c86838701613981565b60008451613cd8818460208901612eaa565b91909101928352506020820152604001919050565b60008451613cff818460208901612eaa565b82018481528351613d17816020808501908801612eaa565b0160200195945050505050565b60008060408385031215613d3757600080fd5b8251613d4281612e0e565b6020939093015192949293505050565b600060208284031215613d6457600080fd5b8151612d3481612e0e565b600060208284031215613d8157600080fd5b8151612d34816132f8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152613dd160a0830184612ece565b97965050505050505056fea264697066735822122085a984cb87d1882d86be4e4f9921654af97ee515b51188027564f18c6cf69e2a64736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155MetaMintBurnMock__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/ERC1155MetaMintBurnPackedBalanceMock__factory.d.ts b/src/adapter/factories/mocks/ERC1155MetaMintBurnPackedBalanceMock__factory.d.ts index 316c466..529e4c5 100644 --- a/src/adapter/factories/mocks/ERC1155MetaMintBurnPackedBalanceMock__factory.d.ts +++ b/src/adapter/factories/mocks/ERC1155MetaMintBurnPackedBalanceMock__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155MetaMintBurnPackedBalanceMock__factory extends Contr }): TransactionRequest; attach(address: string): ERC1155MetaMintBurnPackedBalanceMock; connect(signer: Signer): ERC1155MetaMintBurnPackedBalanceMock__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620049f4380380620049f4833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61468180620003736000396000f3fe608060405234801561001057600080fd5b50600436106101765760003560e01c8063a3d4926e116100d8578063db90e83c1161008c578063f242432a11610066578063f242432a146103f0578063f5d4c82014610403578063fa4e12d71461041657610176565b8063db90e83c1461036c578063e985e9c514610394578063eaec5f81146103dd57610176565b8063bd7a6c41116100bd578063bd7a6c4114610333578063ce0b514b14610346578063d7a0ad901461035957610176565b8063a3d4926e1461030d578063a3f091f51461032057610176565b80632eb2c2d61161012f5780634e1273f4116101145780634e1273f4146102d25780636c0360eb146102f2578063a22cb465146102fa57610176565b80632eb2c2d6146102aa578063437ecbe9146102bf57610176565b806306fdde031161016057806306fdde031461024c5780630e89341c146102615780632d0335ab1461027457610176565b8062fdd58e1461020357806301ffc9a714610229575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b610216610211366004613538565b610429565b6040519081526020015b60405180910390f35b61023c610237366004613592565b610480565b6040519015158152602001610220565b61025461048b565b604051610220919061361d565b61025461026f366004613630565b610519565b610216610282366004613649565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b6102bd6102b836600461380a565b61054d565b005b6102bd6102cd3660046138b8565b6106f1565b6102e56102e03660046138ed565b610701565b60405161022091906139ea565b6102546109fb565b6102bd610308366004613a0b565b610a08565b6102bd61031b366004613a44565b610a9f565b6102bd61032e366004613b05565b610cf7565b6102bd610341366004613b68565b610d09565b6102bd610354366004613bde565b610d14565b6102bd610367366004613c58565b610e84565b61037f61037a366004613630565b610e90565b60408051928352602083019190915201610220565b61023c6103a2366004613ce7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6102166103eb366004613d15565b610eca565b6102bd6103fe366004613d37565b610ef8565b6102bd610411366004613da0565b611095565b61023c610424366004613e0f565b6111ec565b600080600061043784610e90565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506104759082610eca565b925050505b92915050565b600061047a82611a35565b6004805461049890613e60565b80601f01602080910402602001604051908101604052809291908181526020018280546104c490613e60565b80156105115780601f106104e657610100808354040283529160200191610511565b820191906000526020600020905b8154815290600101906020018083116104f457829003601f168201915b505050505081565b6060600361052683611a91565b604051602001610537929190613ecf565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806105a1575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b61062d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff84166106d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e5400000060648201526084016101fa565b6106dc85858585611bf1565b6106ea858585855a86612054565b5050505050565b6106fc8383836121f9565b505050565b81518151606091908114610797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e4754480000000000000060648201526084016101fa565b6000806107bd856000815181106107b0576107b0613fdc565b6020026020010151610e90565b915091506000806000886000815181106107d9576107d9613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561084f5761084f613666565b604051908082528060200260200182016040528015610878578160200160208202803683370190505b5090506108858385610eca565b8160008151811061089857610898613fdc565b602090810291909101015260015b868110156109ee576108c38982815181106107b0576107b0613fdc565b9096509450828614158061094157508981815181106108e4576108e4613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a600183610910919061403a565b8151811061092057610920613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156109b5576000808b838151811061095b5761095b613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6109bf8486610eca565b8282815181106109d1576109d1613fdc565b6020908102919091010152806109e68161404d565b9150506108a6565b5098975050505050505050565b6003805461049890613e60565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610b68576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b6060610bab60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c8d89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610be99190614085565b604051602081830303815290604052805190602001208c604051602001610c109190614085565b604051602081830303815290604052805190602001208c610c32576000610c35565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052612261565b9050610c9b89898989611bf1565b8415610cde5780806020019051810190610cb5919061418f565b8094508193505050610ccf89898989866020015188612054565b610cd989836124f3565b610cec565b610cec898989895a86612054565b505050505050505050565b610d0384848484612866565b50505050565b6106fc8383836128d8565b73ffffffffffffffffffffffffffffffffffffffff8516610db957604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e5460648201526084016101fa565b6060610dfc60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610e3489857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610c32576000610c35565b9050610e4289898989612a4c565b8415610e765780806020019051810190610e5c919061418f565b8094508193505050610ccf89898989866020015188612abb565b610cec898989895a86612abb565b610d0384848484612c60565b600080610ea06020610100614218565b610eaa9084614218565b9150610eb96020610100614218565b610ec3908461422c565b9050915091565b600080610edd600164010000000061403a565b90506000610eec846020614240565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610f4c575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610fd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f5200000000000000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff841661107b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101fa565b61108785858585612a4c565b6106ea858585855a86612abb565b600061112086837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa5248289896110cb5760006110ce565b60015b896110da5760006110dd565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610c79565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a382156111e4576000818060200190518101906111d69190614257565b90506111e287826124f3565b505b505050505050565b6000808251116112a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b73ffffffffffffffffffffffffffffffffffffffff8516611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101fa565b600061135283612ec1565b60f81c9050600581106113e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b60008160ff1660058111156113fe576113fe61428c565b90506000808080808560058111156114185761141861428c565b036114a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101fa565b60018560058111156114b9576114b961428c565b0361162b57875160611461154f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b61155a886000612fc4565b9250611567886020612fc4565b91508760408151811061157c5761157c613fdc565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156115d9573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d81169116149750611a2d9650505050505050565b600285600581111561163f5761163f61428c565b036117a55787516061146116d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b6116e0886000612fc4565b92506116ed886020612fc4565b91508760408151811061170257611702613fdc565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016115b7565b60038560058111156117b9576117b961428c565b036118a5576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611812908c908c906004016142bb565b602060405180830381865afa15801561182f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b60048560058111156118b9576118b961428c565b036119a5576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611912908d908c906004016142fd565b602060405180830381865afa15801561192f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a8857506001919050565b61047a82613077565b606081600003611ad457505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611afe5780611ae88161404d565b9150611af79050600a83614218565b9150611ad8565b60008167ffffffffffffffff811115611b1957611b19613666565b6040519080825280601f01601f191660200182016040528015611b43576020820181803683370190505b509050815b8515611be857611b5960018261403a565b90506000611b68600a88614218565b611b7390600a614240565b611b7d908861403a565b611b88906030614316565b905060008160f81b905080848481518110611ba557611ba5613fdc565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611bdf600a89614218565b97505050611b48565b50949350505050565b815181518114611ca9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015611ce55750600081115b15611ee557600080611d03856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091611d619190849088908590611d5257611d52613fdc565b60200260200101516001613114565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091611dbd9190859089908590611dae57611dae613fdc565b60200260200101516000613114565b90508360015b86811015611e9357611de08982815181106107b0576107b0613fdc565b9096509450818614611e4f5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611e6684868a8481518110611d5257611d52613fdc565b9350611e7f83868a8481518110611dae57611dae613fdc565b925080611e8b8161404d565b915050611dc3565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611fcf565b60005b81811015611fcd57828181518110611f0257611f02613fdc565b6020026020010151611f2d87868481518110611f2057611f20613fdc565b6020026020010151610429565b1015611fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f570000000000000000000060648201526084016101fa565b80611fc58161404d565b915050611ee8565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161204592919061432f565b60405180910390a45050505050565b6120738573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016120bc959493929190614354565b60206040518083038160008887f11580156120db573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061210091906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c8100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a4016101fa565b61220683838360016133b9565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6060808380602001905181019061227891906143bf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260026020526040812054919450919250906122b0836041612fc4565b90508181108015906122cb57506122c88260646143f6565b81105b612357576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e43450000000060648201526084016101fa565b60006123938683878051906020012060405160200161237893929190614409565b60405160208183030381529060405280519060200120613440565b905060008683876040516020016123ac93929190614430565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905290506123e78360016143f6565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf5961243c8560016143f6565b60405190815260200160405180910390a2612459898383886111ec565b6124e757604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e415455524560648201526084016101fa565b50505050509392505050565b60006125028260600151612ec1565b60f81c905060028110612597576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e000000000060648201526084016101fa565b60008160ff1660028111156125ae576125ae61428c565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156125e45786604001516125e6565b335b925060008560028111156125fc576125fc61428c565b036127135786606001518060200190518101906126199190614467565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036126695761264788848484612a4c565b6126648884845a8560405180602001604052806000815250612abb565b61285c565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156126f657600080fd5b505af115801561270a573d6000803e3d6000fd5b5050505061285c565b866060015180602001905181019061272b9190614495565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af11580156127ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127d091906144b2565b61285c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c45440060648201526084016101fa565b5050505050505050565b61287384848460006133b9565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610d0360008585855a86612abb565b81518151811461296a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e47544800000060648201526084016101fa565b60005b818110156129c6576129b48585838151811061298b5761298b613fdc565b60200260200101518584815181106129a5576129a5613fdc565b602002602001015160016133b9565b806129be8161404d565b91505061296d565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612a3e92919061432f565b60405180910390a450505050565b612a5984838360016133b9565b612a6683838360006133b9565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612a3e565b612ada8573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401612b239594939291906144cf565b60206040518083038160008887f1158015612b42573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612b6791906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e6100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a4016101fa565b8151835114612cf1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e475448000060648201526084016101fa565b825115612e3357600080612d11856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152812054875193955091935091612d609190849088908590611dae57611dae613fdc565b86519091508360015b82811015612dfa57612d868982815181106107b0576107b0613fdc565b9096509450818614612dcf5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b612de684868a8481518110611dae57611dae613fdc565b935080612df28161404d565b915050612d69565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612eaa92919061432f565b60405180910390a4610d0360008585855a86612054565b600080825111612f53576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101fa565b8160018351612f62919061403a565b81518110612f7257612f72613fdc565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612fd18260206143f6565b83511015613061576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101fa565b61306c6020836143f6565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016130ca57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461047a565b600080613122856020614240565b90506000613136600164010000000061403a565b9050600084600181111561314c5761314c61428c565b0361320b5761315d85831b886143f6565b925061316b6020600261463f565b6131798689851c84166143f6565b10613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f57000000000000000000000000000060648201526084016101fa565b613375565b600184600181111561321f5761321f61428c565b036132c75761323085831b8861403a565b925084818389901c161015613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f570000000000000000000000000060648201526084016101fa565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b5050949350505050565b6000813f80158015906133b257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806133c585610e90565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061340590828686613114565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b306040516020016134cd92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016134f693929190614409565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461353557600080fd5b50565b6000806040838503121561354b57600080fd5b823561355681613513565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461353557600080fd5b6000602082840312156135a457600080fd5b81356133b281613564565b60005b838110156135ca5781810151838201526020016135b2565b50506000910152565b600081518084526135eb8160208601602086016135af565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006133b260208301846135d3565b60006020828403121561364257600080fd5b5035919050565b60006020828403121561365b57600080fd5b81356133b281613513565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156136dc576136dc613666565b604052919050565b600067ffffffffffffffff8211156136fe576136fe613666565b5060051b60200190565b600082601f83011261371957600080fd5b8135602061372e613729836136e4565b613695565b82815260059290921b8401810191818101908684111561374d57600080fd5b8286015b848110156137685780358352918301918301613751565b509695505050505050565b600067ffffffffffffffff82111561378d5761378d613666565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126137ca57600080fd5b81356137d861372982613773565b8181528460208386010111156137ed57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561382257600080fd5b853561382d81613513565b9450602086013561383d81613513565b9350604086013567ffffffffffffffff8082111561385a57600080fd5b61386689838a01613708565b9450606088013591508082111561387c57600080fd5b61388889838a01613708565b9350608088013591508082111561389e57600080fd5b506138ab888289016137b9565b9150509295509295909350565b6000806000606084860312156138cd57600080fd5b83356138d881613513565b95602085013595506040909401359392505050565b6000806040838503121561390057600080fd5b823567ffffffffffffffff8082111561391857600080fd5b818501915085601f83011261392c57600080fd5b8135602061393c613729836136e4565b82815260059290921b8401810191818101908984111561395b57600080fd5b948201945b8386101561398257853561397381613513565b82529482019490820190613960565b9650508601359250508082111561399857600080fd5b506139a585828601613708565b9150509250929050565b600081518084526020808501945080840160005b838110156139df578151875295820195908201906001016139c3565b509495945050505050565b6020815260006133b260208301846139af565b801515811461353557600080fd5b60008060408385031215613a1e57600080fd5b8235613a2981613513565b91506020830135613a39816139fd565b809150509250929050565b60008060008060008060c08789031215613a5d57600080fd5b8635613a6881613513565b95506020870135613a7881613513565b9450604087013567ffffffffffffffff80821115613a9557600080fd5b613aa18a838b01613708565b95506060890135915080821115613ab757600080fd5b613ac38a838b01613708565b945060808901359150613ad5826139fd565b90925060a08801359080821115613aeb57600080fd5b50613af889828a016137b9565b9150509295509295509295565b60008060008060808587031215613b1b57600080fd5b8435613b2681613513565b93506020850135925060408501359150606085013567ffffffffffffffff811115613b5057600080fd5b613b5c878288016137b9565b91505092959194509250565b600080600060608486031215613b7d57600080fd5b8335613b8881613513565b9250602084013567ffffffffffffffff80821115613ba557600080fd5b613bb187838801613708565b93506040860135915080821115613bc757600080fd5b50613bd486828701613708565b9150509250925092565b60008060008060008060c08789031215613bf757600080fd5b8635613c0281613513565b95506020870135613c1281613513565b945060408701359350606087013592506080870135613c30816139fd565b915060a087013567ffffffffffffffff811115613c4c57600080fd5b613af889828a016137b9565b60008060008060808587031215613c6e57600080fd5b8435613c7981613513565b9350602085013567ffffffffffffffff80821115613c9657600080fd5b613ca288838901613708565b94506040870135915080821115613cb857600080fd5b613cc488838901613708565b93506060870135915080821115613cda57600080fd5b50613b5c878288016137b9565b60008060408385031215613cfa57600080fd5b8235613d0581613513565b91506020830135613a3981613513565b60008060408385031215613d2857600080fd5b50508035926020909101359150565b600080600080600060a08688031215613d4f57600080fd5b8535613d5a81613513565b94506020860135613d6a81613513565b93506040860135925060608601359150608086013567ffffffffffffffff811115613d9457600080fd5b6138ab888289016137b9565b600080600080600060a08688031215613db857600080fd5b8535613dc381613513565b94506020860135613dd381613513565b93506040860135613de3816139fd565b92506060860135613df3816139fd565b9150608086013567ffffffffffffffff811115613d9457600080fd5b60008060008060808587031215613e2557600080fd5b8435613e3081613513565b935060208501359250604085013567ffffffffffffffff80821115613e5457600080fd5b613cc4888389016137b9565b600181811c90821680613e7457607f821691505b602082108103613ead577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151613ec58185602086016135af565b9290920192915050565b600080845481600182811c915080831680613eeb57607f831692505b60208084108203613f23577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613f375760018114613f6a57613f97565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613f97565b60008b81526020902060005b86811015613f8f5781548b820152908501908301613f76565b505084890196505b505050505050613fd3613faa8286613eb3565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561047a5761047a61400b565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361407e5761407e61400b565b5060010190565b815160009082906020808601845b838110156140af57815185529382019390820190600101614093565b50929695505050505050565b600082601f8301126140cc57600080fd5b81516140da61372982613773565b8181528460208386010111156140ef57600080fd5b611a2d8260208301602087016135af565b60006080828403121561411257600080fd5b6040516080810167ffffffffffffffff828210818311171561413657614136613666565b8160405282935084518352602085015160208401526040850151915061415b82613513565b816040840152606085015191508082111561417557600080fd5b50614182858286016140bb565b6060830152505092915050565b600080604083850312156141a257600080fd5b825167ffffffffffffffff808211156141ba57600080fd5b6141c686838701614100565b935060208501519150808211156141dc57600080fd5b506139a5858286016140bb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082614227576142276141e9565b500490565b60008261423b5761423b6141e9565b500690565b808202811582820484141761047a5761047a61400b565b60006020828403121561426957600080fd5b815167ffffffffffffffff81111561428057600080fd5b611a2d84828501614100565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6040815260006142ce60408301856135d3565b8281036020840152613fd381856135d3565b6000602082840312156142f257600080fd5b81516133b281613564565b828152604060208201526000611a2d60408301846135d3565b60ff818116838216019081111561047a5761047a61400b565b60408152600061434260408301856139af565b8281036020840152613fd381856139af565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261438d60a08301866139af565b828103606084015261439f81866139af565b905082810360808401526143b381856135d3565b98975050505050505050565b600080604083850312156143d257600080fd5b825167ffffffffffffffff808211156143ea57600080fd5b6141c6868387016140bb565b8082018082111561047a5761047a61400b565b6000845161441b8184602089016135af565b91909101928352506020820152604001919050565b600084516144428184602089016135af565b8201848152835161445a8160208085019088016135af565b0160200195945050505050565b6000806040838503121561447a57600080fd5b825161448581613513565b6020939093015192949293505050565b6000602082840312156144a757600080fd5b81516133b281613513565b6000602082840312156144c457600080fd5b81516133b2816139fd565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261451460a08301846135d3565b979650505050505050565b600181815b8085111561457857817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561455e5761455e61400b565b8085161561456b57918102915b93841c9390800290614524565b509250929050565b60008261458f5750600161047a565b8161459c5750600061047a565b81600181146145b257600281146145bc576145d8565b600191505061047a565b60ff8411156145cd576145cd61400b565b50506001821b61047a565b5060208310610133831016604e8410600b84101617156145fb575081810a61047a565b614605838361451f565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156146375761463761400b565b029392505050565b60006133b2838361458056fea26469706673582212206d206f09c76abdb29337514c27d2df722cd22473e22b4d421221e9ec98f1937b64736f6c63430008120033"; + static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620049f4380380620049f4833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61468180620003736000396000f3fe608060405234801561001057600080fd5b50600436106101765760003560e01c8063a3d4926e116100d8578063db90e83c1161008c578063f242432a11610066578063f242432a146103f0578063f5d4c82014610403578063fa4e12d71461041657610176565b8063db90e83c1461036c578063e985e9c514610394578063eaec5f81146103dd57610176565b8063bd7a6c41116100bd578063bd7a6c4114610333578063ce0b514b14610346578063d7a0ad901461035957610176565b8063a3d4926e1461030d578063a3f091f51461032057610176565b80632eb2c2d61161012f5780634e1273f4116101145780634e1273f4146102d25780636c0360eb146102f2578063a22cb465146102fa57610176565b80632eb2c2d6146102aa578063437ecbe9146102bf57610176565b806306fdde031161016057806306fdde031461024c5780630e89341c146102615780632d0335ab1461027457610176565b8062fdd58e1461020357806301ffc9a714610229575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b610216610211366004613538565b610429565b6040519081526020015b60405180910390f35b61023c610237366004613592565b610480565b6040519015158152602001610220565b61025461048b565b604051610220919061361d565b61025461026f366004613630565b610519565b610216610282366004613649565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b6102bd6102b836600461380a565b61054d565b005b6102bd6102cd3660046138b8565b6106f1565b6102e56102e03660046138ed565b610701565b60405161022091906139ea565b6102546109fb565b6102bd610308366004613a0b565b610a08565b6102bd61031b366004613a44565b610a9f565b6102bd61032e366004613b05565b610cf7565b6102bd610341366004613b68565b610d09565b6102bd610354366004613bde565b610d14565b6102bd610367366004613c58565b610e84565b61037f61037a366004613630565b610e90565b60408051928352602083019190915201610220565b61023c6103a2366004613ce7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6102166103eb366004613d15565b610eca565b6102bd6103fe366004613d37565b610ef8565b6102bd610411366004613da0565b611095565b61023c610424366004613e0f565b6111ec565b600080600061043784610e90565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506104759082610eca565b925050505b92915050565b600061047a82611a35565b6004805461049890613e60565b80601f01602080910402602001604051908101604052809291908181526020018280546104c490613e60565b80156105115780601f106104e657610100808354040283529160200191610511565b820191906000526020600020905b8154815290600101906020018083116104f457829003601f168201915b505050505081565b6060600361052683611a91565b604051602001610537929190613ecf565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806105a1575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b61062d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff84166106d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e5400000060648201526084016101fa565b6106dc85858585611bf1565b6106ea858585855a86612054565b5050505050565b6106fc8383836121f9565b505050565b81518151606091908114610797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e4754480000000000000060648201526084016101fa565b6000806107bd856000815181106107b0576107b0613fdc565b6020026020010151610e90565b915091506000806000886000815181106107d9576107d9613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561084f5761084f613666565b604051908082528060200260200182016040528015610878578160200160208202803683370190505b5090506108858385610eca565b8160008151811061089857610898613fdc565b602090810291909101015260015b868110156109ee576108c38982815181106107b0576107b0613fdc565b9096509450828614158061094157508981815181106108e4576108e4613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a600183610910919061403a565b8151811061092057610920613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156109b5576000808b838151811061095b5761095b613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6109bf8486610eca565b8282815181106109d1576109d1613fdc565b6020908102919091010152806109e68161404d565b9150506108a6565b5098975050505050505050565b6003805461049890613e60565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610b68576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b6060610bab60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c8d89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610be99190614085565b604051602081830303815290604052805190602001208c604051602001610c109190614085565b604051602081830303815290604052805190602001208c610c32576000610c35565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052612261565b9050610c9b89898989611bf1565b8415610cde5780806020019051810190610cb5919061418f565b8094508193505050610ccf89898989866020015188612054565b610cd989836124f3565b610cec565b610cec898989895a86612054565b505050505050505050565b610d0384848484612866565b50505050565b6106fc8383836128d8565b73ffffffffffffffffffffffffffffffffffffffff8516610db957604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e5460648201526084016101fa565b6060610dfc60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610e3489857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610c32576000610c35565b9050610e4289898989612a4c565b8415610e765780806020019051810190610e5c919061418f565b8094508193505050610ccf89898989866020015188612abb565b610cec898989895a86612abb565b610d0384848484612c60565b600080610ea06020610100614218565b610eaa9084614218565b9150610eb96020610100614218565b610ec3908461422c565b9050915091565b600080610edd600164010000000061403a565b90506000610eec846020614240565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610f4c575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610fd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f5200000000000000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff841661107b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101fa565b61108785858585612a4c565b6106ea858585855a86612abb565b600061112086837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa5248289896110cb5760006110ce565b60015b896110da5760006110dd565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610c79565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a382156111e4576000818060200190518101906111d69190614257565b90506111e287826124f3565b505b505050505050565b6000808251116112a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b73ffffffffffffffffffffffffffffffffffffffff8516611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101fa565b600061135283612ec1565b60f81c9050600581106113e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b60008160ff1660058111156113fe576113fe61428c565b90506000808080808560058111156114185761141861428c565b036114a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101fa565b60018560058111156114b9576114b961428c565b0361162b57875160611461154f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b61155a886000612fc4565b9250611567886020612fc4565b91508760408151811061157c5761157c613fdc565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156115d9573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d81169116149750611a2d9650505050505050565b600285600581111561163f5761163f61428c565b036117a55787516061146116d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b6116e0886000612fc4565b92506116ed886020612fc4565b91508760408151811061170257611702613fdc565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016115b7565b60038560058111156117b9576117b961428c565b036118a5576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611812908c908c906004016142bb565b602060405180830381865afa15801561182f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b60048560058111156118b9576118b961428c565b036119a5576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611912908d908c906004016142fd565b602060405180830381865afa15801561192f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a8857506001919050565b61047a82613077565b606081600003611ad457505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611afe5780611ae88161404d565b9150611af79050600a83614218565b9150611ad8565b60008167ffffffffffffffff811115611b1957611b19613666565b6040519080825280601f01601f191660200182016040528015611b43576020820181803683370190505b509050815b8515611be857611b5960018261403a565b90506000611b68600a88614218565b611b7390600a614240565b611b7d908861403a565b611b88906030614316565b905060008160f81b905080848481518110611ba557611ba5613fdc565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611bdf600a89614218565b97505050611b48565b50949350505050565b815181518114611ca9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015611ce55750600081115b15611ee557600080611d03856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091611d619190849088908590611d5257611d52613fdc565b60200260200101516001613114565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091611dbd9190859089908590611dae57611dae613fdc565b60200260200101516000613114565b90508360015b86811015611e9357611de08982815181106107b0576107b0613fdc565b9096509450818614611e4f5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611e6684868a8481518110611d5257611d52613fdc565b9350611e7f83868a8481518110611dae57611dae613fdc565b925080611e8b8161404d565b915050611dc3565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611fcf565b60005b81811015611fcd57828181518110611f0257611f02613fdc565b6020026020010151611f2d87868481518110611f2057611f20613fdc565b6020026020010151610429565b1015611fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f570000000000000000000060648201526084016101fa565b80611fc58161404d565b915050611ee8565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161204592919061432f565b60405180910390a45050505050565b6120738573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016120bc959493929190614354565b60206040518083038160008887f11580156120db573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061210091906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c8100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a4016101fa565b61220683838360016133b9565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6060808380602001905181019061227891906143bf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260026020526040812054919450919250906122b0836041612fc4565b90508181108015906122cb57506122c88260646143f6565b81105b612357576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e43450000000060648201526084016101fa565b60006123938683878051906020012060405160200161237893929190614409565b60405160208183030381529060405280519060200120613440565b905060008683876040516020016123ac93929190614430565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905290506123e78360016143f6565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf5961243c8560016143f6565b60405190815260200160405180910390a2612459898383886111ec565b6124e757604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e415455524560648201526084016101fa565b50505050509392505050565b60006125028260600151612ec1565b60f81c905060028110612597576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e000000000060648201526084016101fa565b60008160ff1660028111156125ae576125ae61428c565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156125e45786604001516125e6565b335b925060008560028111156125fc576125fc61428c565b036127135786606001518060200190518101906126199190614467565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036126695761264788848484612a4c565b6126648884845a8560405180602001604052806000815250612abb565b61285c565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156126f657600080fd5b505af115801561270a573d6000803e3d6000fd5b5050505061285c565b866060015180602001905181019061272b9190614495565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af11580156127ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127d091906144b2565b61285c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c45440060648201526084016101fa565b5050505050505050565b61287384848460006133b9565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610d0360008585855a86612abb565b81518151811461296a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e47544800000060648201526084016101fa565b60005b818110156129c6576129b48585838151811061298b5761298b613fdc565b60200260200101518584815181106129a5576129a5613fdc565b602002602001015160016133b9565b806129be8161404d565b91505061296d565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612a3e92919061432f565b60405180910390a450505050565b612a5984838360016133b9565b612a6683838360006133b9565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612a3e565b612ada8573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401612b239594939291906144cf565b60206040518083038160008887f1158015612b42573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612b6791906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e6100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a4016101fa565b8151835114612cf1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e475448000060648201526084016101fa565b825115612e3357600080612d11856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152812054875193955091935091612d609190849088908590611dae57611dae613fdc565b86519091508360015b82811015612dfa57612d868982815181106107b0576107b0613fdc565b9096509450818614612dcf5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b612de684868a8481518110611dae57611dae613fdc565b935080612df28161404d565b915050612d69565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612eaa92919061432f565b60405180910390a4610d0360008585855a86612054565b600080825111612f53576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101fa565b8160018351612f62919061403a565b81518110612f7257612f72613fdc565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612fd18260206143f6565b83511015613061576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101fa565b61306c6020836143f6565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016130ca57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461047a565b600080613122856020614240565b90506000613136600164010000000061403a565b9050600084600181111561314c5761314c61428c565b0361320b5761315d85831b886143f6565b925061316b6020600261463f565b6131798689851c84166143f6565b10613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f57000000000000000000000000000060648201526084016101fa565b613375565b600184600181111561321f5761321f61428c565b036132c75761323085831b8861403a565b925084818389901c161015613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f570000000000000000000000000060648201526084016101fa565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b5050949350505050565b6000813f80158015906133b257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806133c585610e90565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061340590828686613114565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b306040516020016134cd92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016134f693929190614409565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461353557600080fd5b50565b6000806040838503121561354b57600080fd5b823561355681613513565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461353557600080fd5b6000602082840312156135a457600080fd5b81356133b281613564565b60005b838110156135ca5781810151838201526020016135b2565b50506000910152565b600081518084526135eb8160208601602086016135af565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006133b260208301846135d3565b60006020828403121561364257600080fd5b5035919050565b60006020828403121561365b57600080fd5b81356133b281613513565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156136dc576136dc613666565b604052919050565b600067ffffffffffffffff8211156136fe576136fe613666565b5060051b60200190565b600082601f83011261371957600080fd5b8135602061372e613729836136e4565b613695565b82815260059290921b8401810191818101908684111561374d57600080fd5b8286015b848110156137685780358352918301918301613751565b509695505050505050565b600067ffffffffffffffff82111561378d5761378d613666565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126137ca57600080fd5b81356137d861372982613773565b8181528460208386010111156137ed57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561382257600080fd5b853561382d81613513565b9450602086013561383d81613513565b9350604086013567ffffffffffffffff8082111561385a57600080fd5b61386689838a01613708565b9450606088013591508082111561387c57600080fd5b61388889838a01613708565b9350608088013591508082111561389e57600080fd5b506138ab888289016137b9565b9150509295509295909350565b6000806000606084860312156138cd57600080fd5b83356138d881613513565b95602085013595506040909401359392505050565b6000806040838503121561390057600080fd5b823567ffffffffffffffff8082111561391857600080fd5b818501915085601f83011261392c57600080fd5b8135602061393c613729836136e4565b82815260059290921b8401810191818101908984111561395b57600080fd5b948201945b8386101561398257853561397381613513565b82529482019490820190613960565b9650508601359250508082111561399857600080fd5b506139a585828601613708565b9150509250929050565b600081518084526020808501945080840160005b838110156139df578151875295820195908201906001016139c3565b509495945050505050565b6020815260006133b260208301846139af565b801515811461353557600080fd5b60008060408385031215613a1e57600080fd5b8235613a2981613513565b91506020830135613a39816139fd565b809150509250929050565b60008060008060008060c08789031215613a5d57600080fd5b8635613a6881613513565b95506020870135613a7881613513565b9450604087013567ffffffffffffffff80821115613a9557600080fd5b613aa18a838b01613708565b95506060890135915080821115613ab757600080fd5b613ac38a838b01613708565b945060808901359150613ad5826139fd565b90925060a08801359080821115613aeb57600080fd5b50613af889828a016137b9565b9150509295509295509295565b60008060008060808587031215613b1b57600080fd5b8435613b2681613513565b93506020850135925060408501359150606085013567ffffffffffffffff811115613b5057600080fd5b613b5c878288016137b9565b91505092959194509250565b600080600060608486031215613b7d57600080fd5b8335613b8881613513565b9250602084013567ffffffffffffffff80821115613ba557600080fd5b613bb187838801613708565b93506040860135915080821115613bc757600080fd5b50613bd486828701613708565b9150509250925092565b60008060008060008060c08789031215613bf757600080fd5b8635613c0281613513565b95506020870135613c1281613513565b945060408701359350606087013592506080870135613c30816139fd565b915060a087013567ffffffffffffffff811115613c4c57600080fd5b613af889828a016137b9565b60008060008060808587031215613c6e57600080fd5b8435613c7981613513565b9350602085013567ffffffffffffffff80821115613c9657600080fd5b613ca288838901613708565b94506040870135915080821115613cb857600080fd5b613cc488838901613708565b93506060870135915080821115613cda57600080fd5b50613b5c878288016137b9565b60008060408385031215613cfa57600080fd5b8235613d0581613513565b91506020830135613a3981613513565b60008060408385031215613d2857600080fd5b50508035926020909101359150565b600080600080600060a08688031215613d4f57600080fd5b8535613d5a81613513565b94506020860135613d6a81613513565b93506040860135925060608601359150608086013567ffffffffffffffff811115613d9457600080fd5b6138ab888289016137b9565b600080600080600060a08688031215613db857600080fd5b8535613dc381613513565b94506020860135613dd381613513565b93506040860135613de3816139fd565b92506060860135613df3816139fd565b9150608086013567ffffffffffffffff811115613d9457600080fd5b60008060008060808587031215613e2557600080fd5b8435613e3081613513565b935060208501359250604085013567ffffffffffffffff80821115613e5457600080fd5b613cc4888389016137b9565b600181811c90821680613e7457607f821691505b602082108103613ead577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151613ec58185602086016135af565b9290920192915050565b600080845481600182811c915080831680613eeb57607f831692505b60208084108203613f23577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613f375760018114613f6a57613f97565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613f97565b60008b81526020902060005b86811015613f8f5781548b820152908501908301613f76565b505084890196505b505050505050613fd3613faa8286613eb3565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561047a5761047a61400b565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361407e5761407e61400b565b5060010190565b815160009082906020808601845b838110156140af57815185529382019390820190600101614093565b50929695505050505050565b600082601f8301126140cc57600080fd5b81516140da61372982613773565b8181528460208386010111156140ef57600080fd5b611a2d8260208301602087016135af565b60006080828403121561411257600080fd5b6040516080810167ffffffffffffffff828210818311171561413657614136613666565b8160405282935084518352602085015160208401526040850151915061415b82613513565b816040840152606085015191508082111561417557600080fd5b50614182858286016140bb565b6060830152505092915050565b600080604083850312156141a257600080fd5b825167ffffffffffffffff808211156141ba57600080fd5b6141c686838701614100565b935060208501519150808211156141dc57600080fd5b506139a5858286016140bb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082614227576142276141e9565b500490565b60008261423b5761423b6141e9565b500690565b808202811582820484141761047a5761047a61400b565b60006020828403121561426957600080fd5b815167ffffffffffffffff81111561428057600080fd5b611a2d84828501614100565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6040815260006142ce60408301856135d3565b8281036020840152613fd381856135d3565b6000602082840312156142f257600080fd5b81516133b281613564565b828152604060208201526000611a2d60408301846135d3565b60ff818116838216019081111561047a5761047a61400b565b60408152600061434260408301856139af565b8281036020840152613fd381856139af565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261438d60a08301866139af565b828103606084015261439f81866139af565b905082810360808401526143b381856135d3565b98975050505050505050565b600080604083850312156143d257600080fd5b825167ffffffffffffffff808211156143ea57600080fd5b6141c6868387016140bb565b8082018082111561047a5761047a61400b565b6000845161441b8184602089016135af565b91909101928352506020820152604001919050565b600084516144428184602089016135af565b8201848152835161445a8160208085019088016135af565b0160200195945050505050565b6000806040838503121561447a57600080fd5b825161448581613513565b6020939093015192949293505050565b6000602082840312156144a757600080fd5b81516133b281613513565b6000602082840312156144c457600080fd5b81516133b2816139fd565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261451460a08301846135d3565b979650505050505050565b600181815b8085111561457857817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561455e5761455e61400b565b8085161561456b57918102915b93841c9390800290614524565b509250929050565b60008261458f5750600161047a565b8161459c5750600061047a565b81600181146145b257600281146145bc576145d8565b600191505061047a565b60ff8411156145cd576145cd61400b565b50506001821b61047a565b5060208310610133831016604e8410600b84101617156145fb575081810a61047a565b614605838361451f565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156146375761463761400b565b029392505050565b60006133b2838361458056fea264697066735822122079e695db3f71f7354c1068131ce0278f6a73d1c4f43f4d74d449483202c3117b64736f6c63430008120033"; static readonly abi: ({ inputs: { internalType: string; diff --git a/src/adapter/factories/mocks/ERC1155MetaMintBurnPackedBalanceMock__factory.js b/src/adapter/factories/mocks/ERC1155MetaMintBurnPackedBalanceMock__factory.js index 9222e06..168b89f 100644 --- a/src/adapter/factories/mocks/ERC1155MetaMintBurnPackedBalanceMock__factory.js +++ b/src/adapter/factories/mocks/ERC1155MetaMintBurnPackedBalanceMock__factory.js @@ -693,7 +693,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x60806040523480156200001157600080fd5b50604051620049f4380380620049f4833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61468180620003736000396000f3fe608060405234801561001057600080fd5b50600436106101765760003560e01c8063a3d4926e116100d8578063db90e83c1161008c578063f242432a11610066578063f242432a146103f0578063f5d4c82014610403578063fa4e12d71461041657610176565b8063db90e83c1461036c578063e985e9c514610394578063eaec5f81146103dd57610176565b8063bd7a6c41116100bd578063bd7a6c4114610333578063ce0b514b14610346578063d7a0ad901461035957610176565b8063a3d4926e1461030d578063a3f091f51461032057610176565b80632eb2c2d61161012f5780634e1273f4116101145780634e1273f4146102d25780636c0360eb146102f2578063a22cb465146102fa57610176565b80632eb2c2d6146102aa578063437ecbe9146102bf57610176565b806306fdde031161016057806306fdde031461024c5780630e89341c146102615780632d0335ab1461027457610176565b8062fdd58e1461020357806301ffc9a714610229575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b610216610211366004613538565b610429565b6040519081526020015b60405180910390f35b61023c610237366004613592565b610480565b6040519015158152602001610220565b61025461048b565b604051610220919061361d565b61025461026f366004613630565b610519565b610216610282366004613649565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b6102bd6102b836600461380a565b61054d565b005b6102bd6102cd3660046138b8565b6106f1565b6102e56102e03660046138ed565b610701565b60405161022091906139ea565b6102546109fb565b6102bd610308366004613a0b565b610a08565b6102bd61031b366004613a44565b610a9f565b6102bd61032e366004613b05565b610cf7565b6102bd610341366004613b68565b610d09565b6102bd610354366004613bde565b610d14565b6102bd610367366004613c58565b610e84565b61037f61037a366004613630565b610e90565b60408051928352602083019190915201610220565b61023c6103a2366004613ce7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6102166103eb366004613d15565b610eca565b6102bd6103fe366004613d37565b610ef8565b6102bd610411366004613da0565b611095565b61023c610424366004613e0f565b6111ec565b600080600061043784610e90565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506104759082610eca565b925050505b92915050565b600061047a82611a35565b6004805461049890613e60565b80601f01602080910402602001604051908101604052809291908181526020018280546104c490613e60565b80156105115780601f106104e657610100808354040283529160200191610511565b820191906000526020600020905b8154815290600101906020018083116104f457829003601f168201915b505050505081565b6060600361052683611a91565b604051602001610537929190613ecf565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806105a1575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b61062d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff84166106d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e5400000060648201526084016101fa565b6106dc85858585611bf1565b6106ea858585855a86612054565b5050505050565b6106fc8383836121f9565b505050565b81518151606091908114610797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e4754480000000000000060648201526084016101fa565b6000806107bd856000815181106107b0576107b0613fdc565b6020026020010151610e90565b915091506000806000886000815181106107d9576107d9613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561084f5761084f613666565b604051908082528060200260200182016040528015610878578160200160208202803683370190505b5090506108858385610eca565b8160008151811061089857610898613fdc565b602090810291909101015260015b868110156109ee576108c38982815181106107b0576107b0613fdc565b9096509450828614158061094157508981815181106108e4576108e4613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a600183610910919061403a565b8151811061092057610920613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156109b5576000808b838151811061095b5761095b613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6109bf8486610eca565b8282815181106109d1576109d1613fdc565b6020908102919091010152806109e68161404d565b9150506108a6565b5098975050505050505050565b6003805461049890613e60565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610b68576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b6060610bab60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c8d89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610be99190614085565b604051602081830303815290604052805190602001208c604051602001610c109190614085565b604051602081830303815290604052805190602001208c610c32576000610c35565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052612261565b9050610c9b89898989611bf1565b8415610cde5780806020019051810190610cb5919061418f565b8094508193505050610ccf89898989866020015188612054565b610cd989836124f3565b610cec565b610cec898989895a86612054565b505050505050505050565b610d0384848484612866565b50505050565b6106fc8383836128d8565b73ffffffffffffffffffffffffffffffffffffffff8516610db957604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e5460648201526084016101fa565b6060610dfc60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610e3489857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610c32576000610c35565b9050610e4289898989612a4c565b8415610e765780806020019051810190610e5c919061418f565b8094508193505050610ccf89898989866020015188612abb565b610cec898989895a86612abb565b610d0384848484612c60565b600080610ea06020610100614218565b610eaa9084614218565b9150610eb96020610100614218565b610ec3908461422c565b9050915091565b600080610edd600164010000000061403a565b90506000610eec846020614240565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610f4c575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610fd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f5200000000000000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff841661107b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101fa565b61108785858585612a4c565b6106ea858585855a86612abb565b600061112086837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa5248289896110cb5760006110ce565b60015b896110da5760006110dd565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610c79565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a382156111e4576000818060200190518101906111d69190614257565b90506111e287826124f3565b505b505050505050565b6000808251116112a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b73ffffffffffffffffffffffffffffffffffffffff8516611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101fa565b600061135283612ec1565b60f81c9050600581106113e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b60008160ff1660058111156113fe576113fe61428c565b90506000808080808560058111156114185761141861428c565b036114a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101fa565b60018560058111156114b9576114b961428c565b0361162b57875160611461154f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b61155a886000612fc4565b9250611567886020612fc4565b91508760408151811061157c5761157c613fdc565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156115d9573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d81169116149750611a2d9650505050505050565b600285600581111561163f5761163f61428c565b036117a55787516061146116d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b6116e0886000612fc4565b92506116ed886020612fc4565b91508760408151811061170257611702613fdc565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016115b7565b60038560058111156117b9576117b961428c565b036118a5576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611812908c908c906004016142bb565b602060405180830381865afa15801561182f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b60048560058111156118b9576118b961428c565b036119a5576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611912908d908c906004016142fd565b602060405180830381865afa15801561192f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a8857506001919050565b61047a82613077565b606081600003611ad457505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611afe5780611ae88161404d565b9150611af79050600a83614218565b9150611ad8565b60008167ffffffffffffffff811115611b1957611b19613666565b6040519080825280601f01601f191660200182016040528015611b43576020820181803683370190505b509050815b8515611be857611b5960018261403a565b90506000611b68600a88614218565b611b7390600a614240565b611b7d908861403a565b611b88906030614316565b905060008160f81b905080848481518110611ba557611ba5613fdc565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611bdf600a89614218565b97505050611b48565b50949350505050565b815181518114611ca9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015611ce55750600081115b15611ee557600080611d03856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091611d619190849088908590611d5257611d52613fdc565b60200260200101516001613114565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091611dbd9190859089908590611dae57611dae613fdc565b60200260200101516000613114565b90508360015b86811015611e9357611de08982815181106107b0576107b0613fdc565b9096509450818614611e4f5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611e6684868a8481518110611d5257611d52613fdc565b9350611e7f83868a8481518110611dae57611dae613fdc565b925080611e8b8161404d565b915050611dc3565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611fcf565b60005b81811015611fcd57828181518110611f0257611f02613fdc565b6020026020010151611f2d87868481518110611f2057611f20613fdc565b6020026020010151610429565b1015611fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f570000000000000000000060648201526084016101fa565b80611fc58161404d565b915050611ee8565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161204592919061432f565b60405180910390a45050505050565b6120738573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016120bc959493929190614354565b60206040518083038160008887f11580156120db573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061210091906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c8100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a4016101fa565b61220683838360016133b9565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6060808380602001905181019061227891906143bf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260026020526040812054919450919250906122b0836041612fc4565b90508181108015906122cb57506122c88260646143f6565b81105b612357576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e43450000000060648201526084016101fa565b60006123938683878051906020012060405160200161237893929190614409565b60405160208183030381529060405280519060200120613440565b905060008683876040516020016123ac93929190614430565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905290506123e78360016143f6565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf5961243c8560016143f6565b60405190815260200160405180910390a2612459898383886111ec565b6124e757604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e415455524560648201526084016101fa565b50505050509392505050565b60006125028260600151612ec1565b60f81c905060028110612597576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e000000000060648201526084016101fa565b60008160ff1660028111156125ae576125ae61428c565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156125e45786604001516125e6565b335b925060008560028111156125fc576125fc61428c565b036127135786606001518060200190518101906126199190614467565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036126695761264788848484612a4c565b6126648884845a8560405180602001604052806000815250612abb565b61285c565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156126f657600080fd5b505af115801561270a573d6000803e3d6000fd5b5050505061285c565b866060015180602001905181019061272b9190614495565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af11580156127ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127d091906144b2565b61285c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c45440060648201526084016101fa565b5050505050505050565b61287384848460006133b9565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610d0360008585855a86612abb565b81518151811461296a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e47544800000060648201526084016101fa565b60005b818110156129c6576129b48585838151811061298b5761298b613fdc565b60200260200101518584815181106129a5576129a5613fdc565b602002602001015160016133b9565b806129be8161404d565b91505061296d565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612a3e92919061432f565b60405180910390a450505050565b612a5984838360016133b9565b612a6683838360006133b9565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612a3e565b612ada8573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401612b239594939291906144cf565b60206040518083038160008887f1158015612b42573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612b6791906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e6100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a4016101fa565b8151835114612cf1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e475448000060648201526084016101fa565b825115612e3357600080612d11856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152812054875193955091935091612d609190849088908590611dae57611dae613fdc565b86519091508360015b82811015612dfa57612d868982815181106107b0576107b0613fdc565b9096509450818614612dcf5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b612de684868a8481518110611dae57611dae613fdc565b935080612df28161404d565b915050612d69565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612eaa92919061432f565b60405180910390a4610d0360008585855a86612054565b600080825111612f53576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101fa565b8160018351612f62919061403a565b81518110612f7257612f72613fdc565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612fd18260206143f6565b83511015613061576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101fa565b61306c6020836143f6565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016130ca57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461047a565b600080613122856020614240565b90506000613136600164010000000061403a565b9050600084600181111561314c5761314c61428c565b0361320b5761315d85831b886143f6565b925061316b6020600261463f565b6131798689851c84166143f6565b10613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f57000000000000000000000000000060648201526084016101fa565b613375565b600184600181111561321f5761321f61428c565b036132c75761323085831b8861403a565b925084818389901c161015613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f570000000000000000000000000060648201526084016101fa565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b5050949350505050565b6000813f80158015906133b257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806133c585610e90565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061340590828686613114565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b306040516020016134cd92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016134f693929190614409565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461353557600080fd5b50565b6000806040838503121561354b57600080fd5b823561355681613513565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461353557600080fd5b6000602082840312156135a457600080fd5b81356133b281613564565b60005b838110156135ca5781810151838201526020016135b2565b50506000910152565b600081518084526135eb8160208601602086016135af565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006133b260208301846135d3565b60006020828403121561364257600080fd5b5035919050565b60006020828403121561365b57600080fd5b81356133b281613513565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156136dc576136dc613666565b604052919050565b600067ffffffffffffffff8211156136fe576136fe613666565b5060051b60200190565b600082601f83011261371957600080fd5b8135602061372e613729836136e4565b613695565b82815260059290921b8401810191818101908684111561374d57600080fd5b8286015b848110156137685780358352918301918301613751565b509695505050505050565b600067ffffffffffffffff82111561378d5761378d613666565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126137ca57600080fd5b81356137d861372982613773565b8181528460208386010111156137ed57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561382257600080fd5b853561382d81613513565b9450602086013561383d81613513565b9350604086013567ffffffffffffffff8082111561385a57600080fd5b61386689838a01613708565b9450606088013591508082111561387c57600080fd5b61388889838a01613708565b9350608088013591508082111561389e57600080fd5b506138ab888289016137b9565b9150509295509295909350565b6000806000606084860312156138cd57600080fd5b83356138d881613513565b95602085013595506040909401359392505050565b6000806040838503121561390057600080fd5b823567ffffffffffffffff8082111561391857600080fd5b818501915085601f83011261392c57600080fd5b8135602061393c613729836136e4565b82815260059290921b8401810191818101908984111561395b57600080fd5b948201945b8386101561398257853561397381613513565b82529482019490820190613960565b9650508601359250508082111561399857600080fd5b506139a585828601613708565b9150509250929050565b600081518084526020808501945080840160005b838110156139df578151875295820195908201906001016139c3565b509495945050505050565b6020815260006133b260208301846139af565b801515811461353557600080fd5b60008060408385031215613a1e57600080fd5b8235613a2981613513565b91506020830135613a39816139fd565b809150509250929050565b60008060008060008060c08789031215613a5d57600080fd5b8635613a6881613513565b95506020870135613a7881613513565b9450604087013567ffffffffffffffff80821115613a9557600080fd5b613aa18a838b01613708565b95506060890135915080821115613ab757600080fd5b613ac38a838b01613708565b945060808901359150613ad5826139fd565b90925060a08801359080821115613aeb57600080fd5b50613af889828a016137b9565b9150509295509295509295565b60008060008060808587031215613b1b57600080fd5b8435613b2681613513565b93506020850135925060408501359150606085013567ffffffffffffffff811115613b5057600080fd5b613b5c878288016137b9565b91505092959194509250565b600080600060608486031215613b7d57600080fd5b8335613b8881613513565b9250602084013567ffffffffffffffff80821115613ba557600080fd5b613bb187838801613708565b93506040860135915080821115613bc757600080fd5b50613bd486828701613708565b9150509250925092565b60008060008060008060c08789031215613bf757600080fd5b8635613c0281613513565b95506020870135613c1281613513565b945060408701359350606087013592506080870135613c30816139fd565b915060a087013567ffffffffffffffff811115613c4c57600080fd5b613af889828a016137b9565b60008060008060808587031215613c6e57600080fd5b8435613c7981613513565b9350602085013567ffffffffffffffff80821115613c9657600080fd5b613ca288838901613708565b94506040870135915080821115613cb857600080fd5b613cc488838901613708565b93506060870135915080821115613cda57600080fd5b50613b5c878288016137b9565b60008060408385031215613cfa57600080fd5b8235613d0581613513565b91506020830135613a3981613513565b60008060408385031215613d2857600080fd5b50508035926020909101359150565b600080600080600060a08688031215613d4f57600080fd5b8535613d5a81613513565b94506020860135613d6a81613513565b93506040860135925060608601359150608086013567ffffffffffffffff811115613d9457600080fd5b6138ab888289016137b9565b600080600080600060a08688031215613db857600080fd5b8535613dc381613513565b94506020860135613dd381613513565b93506040860135613de3816139fd565b92506060860135613df3816139fd565b9150608086013567ffffffffffffffff811115613d9457600080fd5b60008060008060808587031215613e2557600080fd5b8435613e3081613513565b935060208501359250604085013567ffffffffffffffff80821115613e5457600080fd5b613cc4888389016137b9565b600181811c90821680613e7457607f821691505b602082108103613ead577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151613ec58185602086016135af565b9290920192915050565b600080845481600182811c915080831680613eeb57607f831692505b60208084108203613f23577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613f375760018114613f6a57613f97565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613f97565b60008b81526020902060005b86811015613f8f5781548b820152908501908301613f76565b505084890196505b505050505050613fd3613faa8286613eb3565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561047a5761047a61400b565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361407e5761407e61400b565b5060010190565b815160009082906020808601845b838110156140af57815185529382019390820190600101614093565b50929695505050505050565b600082601f8301126140cc57600080fd5b81516140da61372982613773565b8181528460208386010111156140ef57600080fd5b611a2d8260208301602087016135af565b60006080828403121561411257600080fd5b6040516080810167ffffffffffffffff828210818311171561413657614136613666565b8160405282935084518352602085015160208401526040850151915061415b82613513565b816040840152606085015191508082111561417557600080fd5b50614182858286016140bb565b6060830152505092915050565b600080604083850312156141a257600080fd5b825167ffffffffffffffff808211156141ba57600080fd5b6141c686838701614100565b935060208501519150808211156141dc57600080fd5b506139a5858286016140bb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082614227576142276141e9565b500490565b60008261423b5761423b6141e9565b500690565b808202811582820484141761047a5761047a61400b565b60006020828403121561426957600080fd5b815167ffffffffffffffff81111561428057600080fd5b611a2d84828501614100565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6040815260006142ce60408301856135d3565b8281036020840152613fd381856135d3565b6000602082840312156142f257600080fd5b81516133b281613564565b828152604060208201526000611a2d60408301846135d3565b60ff818116838216019081111561047a5761047a61400b565b60408152600061434260408301856139af565b8281036020840152613fd381856139af565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261438d60a08301866139af565b828103606084015261439f81866139af565b905082810360808401526143b381856135d3565b98975050505050505050565b600080604083850312156143d257600080fd5b825167ffffffffffffffff808211156143ea57600080fd5b6141c6868387016140bb565b8082018082111561047a5761047a61400b565b6000845161441b8184602089016135af565b91909101928352506020820152604001919050565b600084516144428184602089016135af565b8201848152835161445a8160208085019088016135af565b0160200195945050505050565b6000806040838503121561447a57600080fd5b825161448581613513565b6020939093015192949293505050565b6000602082840312156144a757600080fd5b81516133b281613513565b6000602082840312156144c457600080fd5b81516133b2816139fd565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261451460a08301846135d3565b979650505050505050565b600181815b8085111561457857817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561455e5761455e61400b565b8085161561456b57918102915b93841c9390800290614524565b509250929050565b60008261458f5750600161047a565b8161459c5750600061047a565b81600181146145b257600281146145bc576145d8565b600191505061047a565b60ff8411156145cd576145cd61400b565b50506001821b61047a565b5060208310610133831016604e8410600b84101617156145fb575081810a61047a565b614605838361451f565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156146375761463761400b565b029392505050565b60006133b2838361458056fea26469706673582212206d206f09c76abdb29337514c27d2df722cd22473e22b4d421221e9ec98f1937b64736f6c63430008120033"; +const _bytecode = "0x60806040523480156200001157600080fd5b50604051620049f4380380620049f4833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61468180620003736000396000f3fe608060405234801561001057600080fd5b50600436106101765760003560e01c8063a3d4926e116100d8578063db90e83c1161008c578063f242432a11610066578063f242432a146103f0578063f5d4c82014610403578063fa4e12d71461041657610176565b8063db90e83c1461036c578063e985e9c514610394578063eaec5f81146103dd57610176565b8063bd7a6c41116100bd578063bd7a6c4114610333578063ce0b514b14610346578063d7a0ad901461035957610176565b8063a3d4926e1461030d578063a3f091f51461032057610176565b80632eb2c2d61161012f5780634e1273f4116101145780634e1273f4146102d25780636c0360eb146102f2578063a22cb465146102fa57610176565b80632eb2c2d6146102aa578063437ecbe9146102bf57610176565b806306fdde031161016057806306fdde031461024c5780630e89341c146102615780632d0335ab1461027457610176565b8062fdd58e1461020357806301ffc9a714610229575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b610216610211366004613538565b610429565b6040519081526020015b60405180910390f35b61023c610237366004613592565b610480565b6040519015158152602001610220565b61025461048b565b604051610220919061361d565b61025461026f366004613630565b610519565b610216610282366004613649565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b6102bd6102b836600461380a565b61054d565b005b6102bd6102cd3660046138b8565b6106f1565b6102e56102e03660046138ed565b610701565b60405161022091906139ea565b6102546109fb565b6102bd610308366004613a0b565b610a08565b6102bd61031b366004613a44565b610a9f565b6102bd61032e366004613b05565b610cf7565b6102bd610341366004613b68565b610d09565b6102bd610354366004613bde565b610d14565b6102bd610367366004613c58565b610e84565b61037f61037a366004613630565b610e90565b60408051928352602083019190915201610220565b61023c6103a2366004613ce7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6102166103eb366004613d15565b610eca565b6102bd6103fe366004613d37565b610ef8565b6102bd610411366004613da0565b611095565b61023c610424366004613e0f565b6111ec565b600080600061043784610e90565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506104759082610eca565b925050505b92915050565b600061047a82611a35565b6004805461049890613e60565b80601f01602080910402602001604051908101604052809291908181526020018280546104c490613e60565b80156105115780601f106104e657610100808354040283529160200191610511565b820191906000526020600020905b8154815290600101906020018083116104f457829003601f168201915b505050505081565b6060600361052683611a91565b604051602001610537929190613ecf565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806105a1575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b61062d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff84166106d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e5400000060648201526084016101fa565b6106dc85858585611bf1565b6106ea858585855a86612054565b5050505050565b6106fc8383836121f9565b505050565b81518151606091908114610797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e4754480000000000000060648201526084016101fa565b6000806107bd856000815181106107b0576107b0613fdc565b6020026020010151610e90565b915091506000806000886000815181106107d9576107d9613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561084f5761084f613666565b604051908082528060200260200182016040528015610878578160200160208202803683370190505b5090506108858385610eca565b8160008151811061089857610898613fdc565b602090810291909101015260015b868110156109ee576108c38982815181106107b0576107b0613fdc565b9096509450828614158061094157508981815181106108e4576108e4613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a600183610910919061403a565b8151811061092057610920613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156109b5576000808b838151811061095b5761095b613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6109bf8486610eca565b8282815181106109d1576109d1613fdc565b6020908102919091010152806109e68161404d565b9150506108a6565b5098975050505050505050565b6003805461049890613e60565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610b68576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b6060610bab60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c8d89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610be99190614085565b604051602081830303815290604052805190602001208c604051602001610c109190614085565b604051602081830303815290604052805190602001208c610c32576000610c35565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052612261565b9050610c9b89898989611bf1565b8415610cde5780806020019051810190610cb5919061418f565b8094508193505050610ccf89898989866020015188612054565b610cd989836124f3565b610cec565b610cec898989895a86612054565b505050505050505050565b610d0384848484612866565b50505050565b6106fc8383836128d8565b73ffffffffffffffffffffffffffffffffffffffff8516610db957604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e5460648201526084016101fa565b6060610dfc60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610e3489857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610c32576000610c35565b9050610e4289898989612a4c565b8415610e765780806020019051810190610e5c919061418f565b8094508193505050610ccf89898989866020015188612abb565b610cec898989895a86612abb565b610d0384848484612c60565b600080610ea06020610100614218565b610eaa9084614218565b9150610eb96020610100614218565b610ec3908461422c565b9050915091565b600080610edd600164010000000061403a565b90506000610eec846020614240565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610f4c575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610fd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f5200000000000000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff841661107b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101fa565b61108785858585612a4c565b6106ea858585855a86612abb565b600061112086837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa5248289896110cb5760006110ce565b60015b896110da5760006110dd565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610c79565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a382156111e4576000818060200190518101906111d69190614257565b90506111e287826124f3565b505b505050505050565b6000808251116112a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b73ffffffffffffffffffffffffffffffffffffffff8516611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101fa565b600061135283612ec1565b60f81c9050600581106113e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b60008160ff1660058111156113fe576113fe61428c565b90506000808080808560058111156114185761141861428c565b036114a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101fa565b60018560058111156114b9576114b961428c565b0361162b57875160611461154f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b61155a886000612fc4565b9250611567886020612fc4565b91508760408151811061157c5761157c613fdc565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156115d9573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d81169116149750611a2d9650505050505050565b600285600581111561163f5761163f61428c565b036117a55787516061146116d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b6116e0886000612fc4565b92506116ed886020612fc4565b91508760408151811061170257611702613fdc565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016115b7565b60038560058111156117b9576117b961428c565b036118a5576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611812908c908c906004016142bb565b602060405180830381865afa15801561182f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b60048560058111156118b9576118b961428c565b036119a5576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611912908d908c906004016142fd565b602060405180830381865afa15801561192f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a8857506001919050565b61047a82613077565b606081600003611ad457505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611afe5780611ae88161404d565b9150611af79050600a83614218565b9150611ad8565b60008167ffffffffffffffff811115611b1957611b19613666565b6040519080825280601f01601f191660200182016040528015611b43576020820181803683370190505b509050815b8515611be857611b5960018261403a565b90506000611b68600a88614218565b611b7390600a614240565b611b7d908861403a565b611b88906030614316565b905060008160f81b905080848481518110611ba557611ba5613fdc565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611bdf600a89614218565b97505050611b48565b50949350505050565b815181518114611ca9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015611ce55750600081115b15611ee557600080611d03856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091611d619190849088908590611d5257611d52613fdc565b60200260200101516001613114565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091611dbd9190859089908590611dae57611dae613fdc565b60200260200101516000613114565b90508360015b86811015611e9357611de08982815181106107b0576107b0613fdc565b9096509450818614611e4f5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611e6684868a8481518110611d5257611d52613fdc565b9350611e7f83868a8481518110611dae57611dae613fdc565b925080611e8b8161404d565b915050611dc3565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611fcf565b60005b81811015611fcd57828181518110611f0257611f02613fdc565b6020026020010151611f2d87868481518110611f2057611f20613fdc565b6020026020010151610429565b1015611fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f570000000000000000000060648201526084016101fa565b80611fc58161404d565b915050611ee8565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161204592919061432f565b60405180910390a45050505050565b6120738573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016120bc959493929190614354565b60206040518083038160008887f11580156120db573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061210091906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c8100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a4016101fa565b61220683838360016133b9565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6060808380602001905181019061227891906143bf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260026020526040812054919450919250906122b0836041612fc4565b90508181108015906122cb57506122c88260646143f6565b81105b612357576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e43450000000060648201526084016101fa565b60006123938683878051906020012060405160200161237893929190614409565b60405160208183030381529060405280519060200120613440565b905060008683876040516020016123ac93929190614430565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905290506123e78360016143f6565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf5961243c8560016143f6565b60405190815260200160405180910390a2612459898383886111ec565b6124e757604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e415455524560648201526084016101fa565b50505050509392505050565b60006125028260600151612ec1565b60f81c905060028110612597576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e000000000060648201526084016101fa565b60008160ff1660028111156125ae576125ae61428c565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156125e45786604001516125e6565b335b925060008560028111156125fc576125fc61428c565b036127135786606001518060200190518101906126199190614467565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036126695761264788848484612a4c565b6126648884845a8560405180602001604052806000815250612abb565b61285c565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156126f657600080fd5b505af115801561270a573d6000803e3d6000fd5b5050505061285c565b866060015180602001905181019061272b9190614495565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af11580156127ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127d091906144b2565b61285c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c45440060648201526084016101fa565b5050505050505050565b61287384848460006133b9565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610d0360008585855a86612abb565b81518151811461296a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e47544800000060648201526084016101fa565b60005b818110156129c6576129b48585838151811061298b5761298b613fdc565b60200260200101518584815181106129a5576129a5613fdc565b602002602001015160016133b9565b806129be8161404d565b91505061296d565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612a3e92919061432f565b60405180910390a450505050565b612a5984838360016133b9565b612a6683838360006133b9565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612a3e565b612ada8573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401612b239594939291906144cf565b60206040518083038160008887f1158015612b42573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612b6791906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e6100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a4016101fa565b8151835114612cf1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e475448000060648201526084016101fa565b825115612e3357600080612d11856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152812054875193955091935091612d609190849088908590611dae57611dae613fdc565b86519091508360015b82811015612dfa57612d868982815181106107b0576107b0613fdc565b9096509450818614612dcf5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b612de684868a8481518110611dae57611dae613fdc565b935080612df28161404d565b915050612d69565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612eaa92919061432f565b60405180910390a4610d0360008585855a86612054565b600080825111612f53576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101fa565b8160018351612f62919061403a565b81518110612f7257612f72613fdc565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612fd18260206143f6565b83511015613061576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101fa565b61306c6020836143f6565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016130ca57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461047a565b600080613122856020614240565b90506000613136600164010000000061403a565b9050600084600181111561314c5761314c61428c565b0361320b5761315d85831b886143f6565b925061316b6020600261463f565b6131798689851c84166143f6565b10613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f57000000000000000000000000000060648201526084016101fa565b613375565b600184600181111561321f5761321f61428c565b036132c75761323085831b8861403a565b925084818389901c161015613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f570000000000000000000000000060648201526084016101fa565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b5050949350505050565b6000813f80158015906133b257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806133c585610e90565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061340590828686613114565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b306040516020016134cd92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016134f693929190614409565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461353557600080fd5b50565b6000806040838503121561354b57600080fd5b823561355681613513565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461353557600080fd5b6000602082840312156135a457600080fd5b81356133b281613564565b60005b838110156135ca5781810151838201526020016135b2565b50506000910152565b600081518084526135eb8160208601602086016135af565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006133b260208301846135d3565b60006020828403121561364257600080fd5b5035919050565b60006020828403121561365b57600080fd5b81356133b281613513565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156136dc576136dc613666565b604052919050565b600067ffffffffffffffff8211156136fe576136fe613666565b5060051b60200190565b600082601f83011261371957600080fd5b8135602061372e613729836136e4565b613695565b82815260059290921b8401810191818101908684111561374d57600080fd5b8286015b848110156137685780358352918301918301613751565b509695505050505050565b600067ffffffffffffffff82111561378d5761378d613666565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126137ca57600080fd5b81356137d861372982613773565b8181528460208386010111156137ed57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561382257600080fd5b853561382d81613513565b9450602086013561383d81613513565b9350604086013567ffffffffffffffff8082111561385a57600080fd5b61386689838a01613708565b9450606088013591508082111561387c57600080fd5b61388889838a01613708565b9350608088013591508082111561389e57600080fd5b506138ab888289016137b9565b9150509295509295909350565b6000806000606084860312156138cd57600080fd5b83356138d881613513565b95602085013595506040909401359392505050565b6000806040838503121561390057600080fd5b823567ffffffffffffffff8082111561391857600080fd5b818501915085601f83011261392c57600080fd5b8135602061393c613729836136e4565b82815260059290921b8401810191818101908984111561395b57600080fd5b948201945b8386101561398257853561397381613513565b82529482019490820190613960565b9650508601359250508082111561399857600080fd5b506139a585828601613708565b9150509250929050565b600081518084526020808501945080840160005b838110156139df578151875295820195908201906001016139c3565b509495945050505050565b6020815260006133b260208301846139af565b801515811461353557600080fd5b60008060408385031215613a1e57600080fd5b8235613a2981613513565b91506020830135613a39816139fd565b809150509250929050565b60008060008060008060c08789031215613a5d57600080fd5b8635613a6881613513565b95506020870135613a7881613513565b9450604087013567ffffffffffffffff80821115613a9557600080fd5b613aa18a838b01613708565b95506060890135915080821115613ab757600080fd5b613ac38a838b01613708565b945060808901359150613ad5826139fd565b90925060a08801359080821115613aeb57600080fd5b50613af889828a016137b9565b9150509295509295509295565b60008060008060808587031215613b1b57600080fd5b8435613b2681613513565b93506020850135925060408501359150606085013567ffffffffffffffff811115613b5057600080fd5b613b5c878288016137b9565b91505092959194509250565b600080600060608486031215613b7d57600080fd5b8335613b8881613513565b9250602084013567ffffffffffffffff80821115613ba557600080fd5b613bb187838801613708565b93506040860135915080821115613bc757600080fd5b50613bd486828701613708565b9150509250925092565b60008060008060008060c08789031215613bf757600080fd5b8635613c0281613513565b95506020870135613c1281613513565b945060408701359350606087013592506080870135613c30816139fd565b915060a087013567ffffffffffffffff811115613c4c57600080fd5b613af889828a016137b9565b60008060008060808587031215613c6e57600080fd5b8435613c7981613513565b9350602085013567ffffffffffffffff80821115613c9657600080fd5b613ca288838901613708565b94506040870135915080821115613cb857600080fd5b613cc488838901613708565b93506060870135915080821115613cda57600080fd5b50613b5c878288016137b9565b60008060408385031215613cfa57600080fd5b8235613d0581613513565b91506020830135613a3981613513565b60008060408385031215613d2857600080fd5b50508035926020909101359150565b600080600080600060a08688031215613d4f57600080fd5b8535613d5a81613513565b94506020860135613d6a81613513565b93506040860135925060608601359150608086013567ffffffffffffffff811115613d9457600080fd5b6138ab888289016137b9565b600080600080600060a08688031215613db857600080fd5b8535613dc381613513565b94506020860135613dd381613513565b93506040860135613de3816139fd565b92506060860135613df3816139fd565b9150608086013567ffffffffffffffff811115613d9457600080fd5b60008060008060808587031215613e2557600080fd5b8435613e3081613513565b935060208501359250604085013567ffffffffffffffff80821115613e5457600080fd5b613cc4888389016137b9565b600181811c90821680613e7457607f821691505b602082108103613ead577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151613ec58185602086016135af565b9290920192915050565b600080845481600182811c915080831680613eeb57607f831692505b60208084108203613f23577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613f375760018114613f6a57613f97565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613f97565b60008b81526020902060005b86811015613f8f5781548b820152908501908301613f76565b505084890196505b505050505050613fd3613faa8286613eb3565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561047a5761047a61400b565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361407e5761407e61400b565b5060010190565b815160009082906020808601845b838110156140af57815185529382019390820190600101614093565b50929695505050505050565b600082601f8301126140cc57600080fd5b81516140da61372982613773565b8181528460208386010111156140ef57600080fd5b611a2d8260208301602087016135af565b60006080828403121561411257600080fd5b6040516080810167ffffffffffffffff828210818311171561413657614136613666565b8160405282935084518352602085015160208401526040850151915061415b82613513565b816040840152606085015191508082111561417557600080fd5b50614182858286016140bb565b6060830152505092915050565b600080604083850312156141a257600080fd5b825167ffffffffffffffff808211156141ba57600080fd5b6141c686838701614100565b935060208501519150808211156141dc57600080fd5b506139a5858286016140bb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082614227576142276141e9565b500490565b60008261423b5761423b6141e9565b500690565b808202811582820484141761047a5761047a61400b565b60006020828403121561426957600080fd5b815167ffffffffffffffff81111561428057600080fd5b611a2d84828501614100565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6040815260006142ce60408301856135d3565b8281036020840152613fd381856135d3565b6000602082840312156142f257600080fd5b81516133b281613564565b828152604060208201526000611a2d60408301846135d3565b60ff818116838216019081111561047a5761047a61400b565b60408152600061434260408301856139af565b8281036020840152613fd381856139af565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261438d60a08301866139af565b828103606084015261439f81866139af565b905082810360808401526143b381856135d3565b98975050505050505050565b600080604083850312156143d257600080fd5b825167ffffffffffffffff808211156143ea57600080fd5b6141c6868387016140bb565b8082018082111561047a5761047a61400b565b6000845161441b8184602089016135af565b91909101928352506020820152604001919050565b600084516144428184602089016135af565b8201848152835161445a8160208085019088016135af565b0160200195945050505050565b6000806040838503121561447a57600080fd5b825161448581613513565b6020939093015192949293505050565b6000602082840312156144a757600080fd5b81516133b281613513565b6000602082840312156144c457600080fd5b81516133b2816139fd565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261451460a08301846135d3565b979650505050505050565b600181815b8085111561457857817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561455e5761455e61400b565b8085161561456b57918102915b93841c9390800290614524565b509250929050565b60008261458f5750600161047a565b8161459c5750600061047a565b81600181146145b257600281146145bc576145d8565b600191505061047a565b60ff8411156145cd576145cd61400b565b50506001821b61047a565b5060208310610133831016604e8410600b84101617156145fb575081810a61047a565b614605838361451f565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156146375761463761400b565b029392505050565b60006133b2838361458056fea264697066735822122079e695db3f71f7354c1068131ce0278f6a73d1c4f43f4d74d449483202c3117b64736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155MetaMintBurnPackedBalanceMock__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/ERC1155MetadataMock__factory.d.ts b/src/adapter/factories/mocks/ERC1155MetadataMock__factory.d.ts index fd6b098..7e6297e 100644 --- a/src/adapter/factories/mocks/ERC1155MetadataMock__factory.d.ts +++ b/src/adapter/factories/mocks/ERC1155MetadataMock__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155MetadataMock__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC1155MetadataMock; connect(signer: Signer): ERC1155MetadataMock__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620021ed380380620021ed833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b611e7a80620003736000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c80634e1273f411610081578063a22cb4651161005b578063a22cb46514610234578063e985e9c514610247578063f242432a14610290576100d3565b80634e1273f4146101f95780636c0360eb146102195780637e518ec814610221576100d3565b80630e89341c116100b25780630e89341c146101be5780631ea430d4146101d15780632eb2c2d6146101e6576100d3565b8062fdd58e1461016057806301ffc9a71461018657806306fdde03146101a9575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d657461646174614d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61017361016e3660046113a8565b6102a3565b6040519081526020015b60405180910390f35b610199610194366004611400565b6102d9565b604051901515815260200161017d565b6101b16102e4565b60405161017d919061148b565b6101b16101cc36600461149e565b610372565b6101e46101df3660046115c4565b6103a6565b005b6101e46101f4366004611697565b6103b2565b61020c610207366004611741565b610556565b60405161017d919061183c565b6101b16106f6565b6101e461022f36600461184f565b610703565b6101e4610242366004611898565b61070c565b6101996102553660046118d4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101e461029e366004611907565b6107a3565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006102d382610940565b600380546102f19061196c565b80601f016020809104026020016040519081016040528092919081815260200182805461031d9061196c565b801561036a5780601f1061033f5761010080835404028352916020019161036a565b820191906000526020600020905b81548152906001019060200180831161034d57829003601f168201915b505050505081565b6060600261037f8361099c565b6040516020016103909291906119bf565b6040516020818303038152906040529050919050565b6103af81610afc565b50565b3373ffffffffffffffffffffffffffffffffffffffff86161480610406575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610492576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610157565b61054185858585610c47565b61054f858585855a86610eac565b5050505050565b606081518351146105e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610157565b6000835167ffffffffffffffff811115610605576106056114b7565b60405190808252806020026020018201604052801561062e578160200160208202803683370190505b50905060005b84518110156106ee5760008086838151811061065257610652611a8c565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106a8576106a8611a8c565b60200260200101518152602001908152602001600020548282815181106106d1576106d1611a8c565b6020908102919091010152806106e681611aea565b915050610634565b509392505050565b600280546102f19061196c565b6103af81611035565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff861614806107f7575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610883576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610926576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610157565b61093285858585611045565b61054f858585855a86611129565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161099357506001919050565b6102d3826112a8565b6060816000036109df57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a0957806109f381611aea565b9150610a029050600a83611b22565b91506109e3565b60008167ffffffffffffffff811115610a2457610a246114b7565b6040519080825280601f01601f191660200182016040528015610a4e576020820181803683370190505b509050815b8515610af357610a64600182611b5d565b90506000610a73600a88611b22565b610a7e90600a611b70565b610a889088611b5d565b610a93906030611b87565b905060008160f81b905080848481518110610ab057610ab0611a8c565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610aea600a89611b22565b97505050610a53565b50949350505050565b600060028054610b0b9061196c565b80601f0160208091040260200160405190810160405280929190818152602001828054610b379061196c565b8015610b845780601f10610b5957610100808354040283529160200191610b84565b820191906000526020600020905b815481529060010190602001808311610b6757829003601f168201915b50505050509050606060005b8351811015610c415782610bbc858381518110610baf57610baf611a8c565b602002602001015161099c565b604051602001610bcd929190611ba0565b6040516020818303038152906040529150838181518110610bf057610bf0611a8c565b60200260200101517f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b83604051610c27919061148b565b60405180910390a280610c3981611aea565b915050610b90565b50505050565b8051825114610cd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610157565b815160005b81811015610e2657828181518110610cf757610cf7611a8c565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d5157610d51611a8c565b602002602001015181526020019081526020016000206000828254610d769190611b5d565b92505081905550828181518110610d8f57610d8f611a8c565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610de957610de9611a8c565b602002602001015181526020019081526020016000206000828254610e0e9190611bc6565b90915550819050610e1e81611aea565b915050610cdd565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e9d929190611bd9565b60405180910390a45050505050565b610ecb8573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f14959493929190611c07565b60206040518083038160008887f1158015610f33573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f589190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610157565b505b505050505050565b60026110418282611cda565b5050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611083908490611b5d565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110c6908490611bc6565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6111488573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401611191959493929190611df4565b60206040518083038160008887f11580156111b0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111d59190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610157565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016112fb57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102d3565b6000813f801580159061137857507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146113a357600080fd5b919050565b600080604083850312156113bb57600080fd5b6113c48361137f565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146103af57600080fd5b60006020828403121561141257600080fd5b8135611378816113d2565b60005b83811015611438578181015183820152602001611420565b50506000910152565b6000815180845261145981602086016020860161141d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006113786020830184611441565b6000602082840312156114b057600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561152d5761152d6114b7565b604052919050565b600067ffffffffffffffff82111561154f5761154f6114b7565b5060051b60200190565b600082601f83011261156a57600080fd5b8135602061157f61157a83611535565b6114e6565b82815260059290921b8401810191818101908684111561159e57600080fd5b8286015b848110156115b957803583529183019183016115a2565b509695505050505050565b6000602082840312156115d657600080fd5b813567ffffffffffffffff8111156115ed57600080fd5b6115f984828501611559565b949350505050565b600067ffffffffffffffff83111561161b5761161b6114b7565b61164c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f860116016114e6565b905082815283838301111561166057600080fd5b828260208301376000602084830101529392505050565b600082601f83011261168857600080fd5b61137883833560208501611601565b600080600080600060a086880312156116af57600080fd5b6116b88661137f565b94506116c66020870161137f565b9350604086013567ffffffffffffffff808211156116e357600080fd5b6116ef89838a01611559565b9450606088013591508082111561170557600080fd5b61171189838a01611559565b9350608088013591508082111561172757600080fd5b5061173488828901611677565b9150509295509295909350565b6000806040838503121561175457600080fd5b823567ffffffffffffffff8082111561176c57600080fd5b818501915085601f83011261178057600080fd5b8135602061179061157a83611535565b82815260059290921b840181019181810190898411156117af57600080fd5b948201945b838610156117d4576117c58661137f565b825294820194908201906117b4565b965050860135925050808211156117ea57600080fd5b506117f785828601611559565b9150509250929050565b600081518084526020808501945080840160005b8381101561183157815187529582019590820190600101611815565b509495945050505050565b6020815260006113786020830184611801565b60006020828403121561186157600080fd5b813567ffffffffffffffff81111561187857600080fd5b8201601f8101841361188957600080fd5b6115f984823560208401611601565b600080604083850312156118ab57600080fd5b6118b48361137f565b9150602083013580151581146118c957600080fd5b809150509250929050565b600080604083850312156118e757600080fd5b6118f08361137f565b91506118fe6020840161137f565b90509250929050565b600080600080600060a0868803121561191f57600080fd5b6119288661137f565b94506119366020870161137f565b93506040860135925060608601359150608086013567ffffffffffffffff81111561196057600080fd5b61173488828901611677565b600181811c9082168061198057607f821691505b6020821081036119b9577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008084546119cd8161196c565b600182811680156119e55760018114611a1857611a47565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0084168752821515830287019450611a47565b8860005260208060002060005b85811015611a3e5781548a820152908401908201611a25565b50505082870194505b505050508351611a5b81836020880161141d565b7f2e6a736f6e0000000000000000000000000000000000000000000000000000009101908152600501949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b1b57611b1b611abb565b5060010190565b600082611b58577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156102d3576102d3611abb565b80820281158282048414176102d3576102d3611abb565b60ff81811683821601908111156102d3576102d3611abb565b60008351611bb281846020880161141d565b835190830190611a5b81836020880161141d565b808201808211156102d3576102d3611abb565b604081526000611bec6040830185611801565b8281036020840152611bfe8185611801565b95945050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4060a0830186611801565b8281036060840152611c528186611801565b90508281036080840152611c668185611441565b98975050505050505050565b600060208284031215611c8457600080fd5b8151611378816113d2565b601f821115611cd557600081815260208120601f850160051c81016020861015611cb65750805b601f850160051c820191505b8181101561102d57828155600101611cc2565b505050565b815167ffffffffffffffff811115611cf457611cf46114b7565b611d0881611d02845461196c565b84611c8f565b602080601f831160018114611d5b5760008415611d255750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855561102d565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015611da857888601518255948401946001909101908401611d89565b5085821015611de457878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611e3960a0830184611441565b97965050505050505056fea26469706673582212202cb990f2ab4fb6c2589e6fc23513a2c2f55f65463acbffae29db00a62968884264736f6c63430008120033"; + static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620021ed380380620021ed833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b611e7a80620003736000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c80634e1273f411610081578063a22cb4651161005b578063a22cb46514610234578063e985e9c514610247578063f242432a14610290576100d3565b80634e1273f4146101f95780636c0360eb146102195780637e518ec814610221576100d3565b80630e89341c116100b25780630e89341c146101be5780631ea430d4146101d15780632eb2c2d6146101e6576100d3565b8062fdd58e1461016057806301ffc9a71461018657806306fdde03146101a9575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d657461646174614d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61017361016e3660046113a8565b6102a3565b6040519081526020015b60405180910390f35b610199610194366004611400565b6102d9565b604051901515815260200161017d565b6101b16102e4565b60405161017d919061148b565b6101b16101cc36600461149e565b610372565b6101e46101df3660046115c4565b6103a6565b005b6101e46101f4366004611697565b6103b2565b61020c610207366004611741565b610556565b60405161017d919061183c565b6101b16106f6565b6101e461022f36600461184f565b610703565b6101e4610242366004611898565b61070c565b6101996102553660046118d4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101e461029e366004611907565b6107a3565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006102d382610940565b600380546102f19061196c565b80601f016020809104026020016040519081016040528092919081815260200182805461031d9061196c565b801561036a5780601f1061033f5761010080835404028352916020019161036a565b820191906000526020600020905b81548152906001019060200180831161034d57829003601f168201915b505050505081565b6060600261037f8361099c565b6040516020016103909291906119bf565b6040516020818303038152906040529050919050565b6103af81610afc565b50565b3373ffffffffffffffffffffffffffffffffffffffff86161480610406575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610492576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610157565b61054185858585610c47565b61054f858585855a86610eac565b5050505050565b606081518351146105e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610157565b6000835167ffffffffffffffff811115610605576106056114b7565b60405190808252806020026020018201604052801561062e578160200160208202803683370190505b50905060005b84518110156106ee5760008086838151811061065257610652611a8c565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106a8576106a8611a8c565b60200260200101518152602001908152602001600020548282815181106106d1576106d1611a8c565b6020908102919091010152806106e681611aea565b915050610634565b509392505050565b600280546102f19061196c565b6103af81611035565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff861614806107f7575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610883576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610926576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610157565b61093285858585611045565b61054f858585855a86611129565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161099357506001919050565b6102d3826112a8565b6060816000036109df57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a0957806109f381611aea565b9150610a029050600a83611b22565b91506109e3565b60008167ffffffffffffffff811115610a2457610a246114b7565b6040519080825280601f01601f191660200182016040528015610a4e576020820181803683370190505b509050815b8515610af357610a64600182611b5d565b90506000610a73600a88611b22565b610a7e90600a611b70565b610a889088611b5d565b610a93906030611b87565b905060008160f81b905080848481518110610ab057610ab0611a8c565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610aea600a89611b22565b97505050610a53565b50949350505050565b600060028054610b0b9061196c565b80601f0160208091040260200160405190810160405280929190818152602001828054610b379061196c565b8015610b845780601f10610b5957610100808354040283529160200191610b84565b820191906000526020600020905b815481529060010190602001808311610b6757829003601f168201915b50505050509050606060005b8351811015610c415782610bbc858381518110610baf57610baf611a8c565b602002602001015161099c565b604051602001610bcd929190611ba0565b6040516020818303038152906040529150838181518110610bf057610bf0611a8c565b60200260200101517f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b83604051610c27919061148b565b60405180910390a280610c3981611aea565b915050610b90565b50505050565b8051825114610cd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610157565b815160005b81811015610e2657828181518110610cf757610cf7611a8c565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d5157610d51611a8c565b602002602001015181526020019081526020016000206000828254610d769190611b5d565b92505081905550828181518110610d8f57610d8f611a8c565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610de957610de9611a8c565b602002602001015181526020019081526020016000206000828254610e0e9190611bc6565b90915550819050610e1e81611aea565b915050610cdd565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e9d929190611bd9565b60405180910390a45050505050565b610ecb8573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f14959493929190611c07565b60206040518083038160008887f1158015610f33573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f589190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610157565b505b505050505050565b60026110418282611cda565b5050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611083908490611b5d565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110c6908490611bc6565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6111488573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401611191959493929190611df4565b60206040518083038160008887f11580156111b0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111d59190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610157565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016112fb57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102d3565b6000813f801580159061137857507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146113a357600080fd5b919050565b600080604083850312156113bb57600080fd5b6113c48361137f565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146103af57600080fd5b60006020828403121561141257600080fd5b8135611378816113d2565b60005b83811015611438578181015183820152602001611420565b50506000910152565b6000815180845261145981602086016020860161141d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006113786020830184611441565b6000602082840312156114b057600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561152d5761152d6114b7565b604052919050565b600067ffffffffffffffff82111561154f5761154f6114b7565b5060051b60200190565b600082601f83011261156a57600080fd5b8135602061157f61157a83611535565b6114e6565b82815260059290921b8401810191818101908684111561159e57600080fd5b8286015b848110156115b957803583529183019183016115a2565b509695505050505050565b6000602082840312156115d657600080fd5b813567ffffffffffffffff8111156115ed57600080fd5b6115f984828501611559565b949350505050565b600067ffffffffffffffff83111561161b5761161b6114b7565b61164c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f860116016114e6565b905082815283838301111561166057600080fd5b828260208301376000602084830101529392505050565b600082601f83011261168857600080fd5b61137883833560208501611601565b600080600080600060a086880312156116af57600080fd5b6116b88661137f565b94506116c66020870161137f565b9350604086013567ffffffffffffffff808211156116e357600080fd5b6116ef89838a01611559565b9450606088013591508082111561170557600080fd5b61171189838a01611559565b9350608088013591508082111561172757600080fd5b5061173488828901611677565b9150509295509295909350565b6000806040838503121561175457600080fd5b823567ffffffffffffffff8082111561176c57600080fd5b818501915085601f83011261178057600080fd5b8135602061179061157a83611535565b82815260059290921b840181019181810190898411156117af57600080fd5b948201945b838610156117d4576117c58661137f565b825294820194908201906117b4565b965050860135925050808211156117ea57600080fd5b506117f785828601611559565b9150509250929050565b600081518084526020808501945080840160005b8381101561183157815187529582019590820190600101611815565b509495945050505050565b6020815260006113786020830184611801565b60006020828403121561186157600080fd5b813567ffffffffffffffff81111561187857600080fd5b8201601f8101841361188957600080fd5b6115f984823560208401611601565b600080604083850312156118ab57600080fd5b6118b48361137f565b9150602083013580151581146118c957600080fd5b809150509250929050565b600080604083850312156118e757600080fd5b6118f08361137f565b91506118fe6020840161137f565b90509250929050565b600080600080600060a0868803121561191f57600080fd5b6119288661137f565b94506119366020870161137f565b93506040860135925060608601359150608086013567ffffffffffffffff81111561196057600080fd5b61173488828901611677565b600181811c9082168061198057607f821691505b6020821081036119b9577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008084546119cd8161196c565b600182811680156119e55760018114611a1857611a47565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0084168752821515830287019450611a47565b8860005260208060002060005b85811015611a3e5781548a820152908401908201611a25565b50505082870194505b505050508351611a5b81836020880161141d565b7f2e6a736f6e0000000000000000000000000000000000000000000000000000009101908152600501949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b1b57611b1b611abb565b5060010190565b600082611b58577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156102d3576102d3611abb565b80820281158282048414176102d3576102d3611abb565b60ff81811683821601908111156102d3576102d3611abb565b60008351611bb281846020880161141d565b835190830190611a5b81836020880161141d565b808201808211156102d3576102d3611abb565b604081526000611bec6040830185611801565b8281036020840152611bfe8185611801565b95945050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4060a0830186611801565b8281036060840152611c528186611801565b90508281036080840152611c668185611441565b98975050505050505050565b600060208284031215611c8457600080fd5b8151611378816113d2565b601f821115611cd557600081815260208120601f850160051c81016020861015611cb65750805b601f850160051c820191505b8181101561102d57828155600101611cc2565b505050565b815167ffffffffffffffff811115611cf457611cf46114b7565b611d0881611d02845461196c565b84611c8f565b602080601f831160018114611d5b5760008415611d255750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855561102d565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015611da857888601518255948401946001909101908401611d89565b5085821015611de457878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611e3960a0830184611441565b97965050505050505056fea2646970667358221220f455c6a46a06091718800aa11c3e419215e2d12b477fef504799d91abe3e489264736f6c63430008120033"; static readonly abi: ({ inputs: { internalType: string; diff --git a/src/adapter/factories/mocks/ERC1155MetadataMock__factory.js b/src/adapter/factories/mocks/ERC1155MetadataMock__factory.js index 2fa6644..098f2ab 100644 --- a/src/adapter/factories/mocks/ERC1155MetadataMock__factory.js +++ b/src/adapter/factories/mocks/ERC1155MetadataMock__factory.js @@ -388,7 +388,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x60806040523480156200001157600080fd5b50604051620021ed380380620021ed833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b611e7a80620003736000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c80634e1273f411610081578063a22cb4651161005b578063a22cb46514610234578063e985e9c514610247578063f242432a14610290576100d3565b80634e1273f4146101f95780636c0360eb146102195780637e518ec814610221576100d3565b80630e89341c116100b25780630e89341c146101be5780631ea430d4146101d15780632eb2c2d6146101e6576100d3565b8062fdd58e1461016057806301ffc9a71461018657806306fdde03146101a9575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d657461646174614d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61017361016e3660046113a8565b6102a3565b6040519081526020015b60405180910390f35b610199610194366004611400565b6102d9565b604051901515815260200161017d565b6101b16102e4565b60405161017d919061148b565b6101b16101cc36600461149e565b610372565b6101e46101df3660046115c4565b6103a6565b005b6101e46101f4366004611697565b6103b2565b61020c610207366004611741565b610556565b60405161017d919061183c565b6101b16106f6565b6101e461022f36600461184f565b610703565b6101e4610242366004611898565b61070c565b6101996102553660046118d4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101e461029e366004611907565b6107a3565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006102d382610940565b600380546102f19061196c565b80601f016020809104026020016040519081016040528092919081815260200182805461031d9061196c565b801561036a5780601f1061033f5761010080835404028352916020019161036a565b820191906000526020600020905b81548152906001019060200180831161034d57829003601f168201915b505050505081565b6060600261037f8361099c565b6040516020016103909291906119bf565b6040516020818303038152906040529050919050565b6103af81610afc565b50565b3373ffffffffffffffffffffffffffffffffffffffff86161480610406575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610492576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610157565b61054185858585610c47565b61054f858585855a86610eac565b5050505050565b606081518351146105e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610157565b6000835167ffffffffffffffff811115610605576106056114b7565b60405190808252806020026020018201604052801561062e578160200160208202803683370190505b50905060005b84518110156106ee5760008086838151811061065257610652611a8c565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106a8576106a8611a8c565b60200260200101518152602001908152602001600020548282815181106106d1576106d1611a8c565b6020908102919091010152806106e681611aea565b915050610634565b509392505050565b600280546102f19061196c565b6103af81611035565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff861614806107f7575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610883576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610926576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610157565b61093285858585611045565b61054f858585855a86611129565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161099357506001919050565b6102d3826112a8565b6060816000036109df57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a0957806109f381611aea565b9150610a029050600a83611b22565b91506109e3565b60008167ffffffffffffffff811115610a2457610a246114b7565b6040519080825280601f01601f191660200182016040528015610a4e576020820181803683370190505b509050815b8515610af357610a64600182611b5d565b90506000610a73600a88611b22565b610a7e90600a611b70565b610a889088611b5d565b610a93906030611b87565b905060008160f81b905080848481518110610ab057610ab0611a8c565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610aea600a89611b22565b97505050610a53565b50949350505050565b600060028054610b0b9061196c565b80601f0160208091040260200160405190810160405280929190818152602001828054610b379061196c565b8015610b845780601f10610b5957610100808354040283529160200191610b84565b820191906000526020600020905b815481529060010190602001808311610b6757829003601f168201915b50505050509050606060005b8351811015610c415782610bbc858381518110610baf57610baf611a8c565b602002602001015161099c565b604051602001610bcd929190611ba0565b6040516020818303038152906040529150838181518110610bf057610bf0611a8c565b60200260200101517f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b83604051610c27919061148b565b60405180910390a280610c3981611aea565b915050610b90565b50505050565b8051825114610cd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610157565b815160005b81811015610e2657828181518110610cf757610cf7611a8c565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d5157610d51611a8c565b602002602001015181526020019081526020016000206000828254610d769190611b5d565b92505081905550828181518110610d8f57610d8f611a8c565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610de957610de9611a8c565b602002602001015181526020019081526020016000206000828254610e0e9190611bc6565b90915550819050610e1e81611aea565b915050610cdd565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e9d929190611bd9565b60405180910390a45050505050565b610ecb8573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f14959493929190611c07565b60206040518083038160008887f1158015610f33573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f589190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610157565b505b505050505050565b60026110418282611cda565b5050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611083908490611b5d565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110c6908490611bc6565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6111488573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401611191959493929190611df4565b60206040518083038160008887f11580156111b0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111d59190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610157565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016112fb57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102d3565b6000813f801580159061137857507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146113a357600080fd5b919050565b600080604083850312156113bb57600080fd5b6113c48361137f565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146103af57600080fd5b60006020828403121561141257600080fd5b8135611378816113d2565b60005b83811015611438578181015183820152602001611420565b50506000910152565b6000815180845261145981602086016020860161141d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006113786020830184611441565b6000602082840312156114b057600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561152d5761152d6114b7565b604052919050565b600067ffffffffffffffff82111561154f5761154f6114b7565b5060051b60200190565b600082601f83011261156a57600080fd5b8135602061157f61157a83611535565b6114e6565b82815260059290921b8401810191818101908684111561159e57600080fd5b8286015b848110156115b957803583529183019183016115a2565b509695505050505050565b6000602082840312156115d657600080fd5b813567ffffffffffffffff8111156115ed57600080fd5b6115f984828501611559565b949350505050565b600067ffffffffffffffff83111561161b5761161b6114b7565b61164c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f860116016114e6565b905082815283838301111561166057600080fd5b828260208301376000602084830101529392505050565b600082601f83011261168857600080fd5b61137883833560208501611601565b600080600080600060a086880312156116af57600080fd5b6116b88661137f565b94506116c66020870161137f565b9350604086013567ffffffffffffffff808211156116e357600080fd5b6116ef89838a01611559565b9450606088013591508082111561170557600080fd5b61171189838a01611559565b9350608088013591508082111561172757600080fd5b5061173488828901611677565b9150509295509295909350565b6000806040838503121561175457600080fd5b823567ffffffffffffffff8082111561176c57600080fd5b818501915085601f83011261178057600080fd5b8135602061179061157a83611535565b82815260059290921b840181019181810190898411156117af57600080fd5b948201945b838610156117d4576117c58661137f565b825294820194908201906117b4565b965050860135925050808211156117ea57600080fd5b506117f785828601611559565b9150509250929050565b600081518084526020808501945080840160005b8381101561183157815187529582019590820190600101611815565b509495945050505050565b6020815260006113786020830184611801565b60006020828403121561186157600080fd5b813567ffffffffffffffff81111561187857600080fd5b8201601f8101841361188957600080fd5b6115f984823560208401611601565b600080604083850312156118ab57600080fd5b6118b48361137f565b9150602083013580151581146118c957600080fd5b809150509250929050565b600080604083850312156118e757600080fd5b6118f08361137f565b91506118fe6020840161137f565b90509250929050565b600080600080600060a0868803121561191f57600080fd5b6119288661137f565b94506119366020870161137f565b93506040860135925060608601359150608086013567ffffffffffffffff81111561196057600080fd5b61173488828901611677565b600181811c9082168061198057607f821691505b6020821081036119b9577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008084546119cd8161196c565b600182811680156119e55760018114611a1857611a47565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0084168752821515830287019450611a47565b8860005260208060002060005b85811015611a3e5781548a820152908401908201611a25565b50505082870194505b505050508351611a5b81836020880161141d565b7f2e6a736f6e0000000000000000000000000000000000000000000000000000009101908152600501949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b1b57611b1b611abb565b5060010190565b600082611b58577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156102d3576102d3611abb565b80820281158282048414176102d3576102d3611abb565b60ff81811683821601908111156102d3576102d3611abb565b60008351611bb281846020880161141d565b835190830190611a5b81836020880161141d565b808201808211156102d3576102d3611abb565b604081526000611bec6040830185611801565b8281036020840152611bfe8185611801565b95945050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4060a0830186611801565b8281036060840152611c528186611801565b90508281036080840152611c668185611441565b98975050505050505050565b600060208284031215611c8457600080fd5b8151611378816113d2565b601f821115611cd557600081815260208120601f850160051c81016020861015611cb65750805b601f850160051c820191505b8181101561102d57828155600101611cc2565b505050565b815167ffffffffffffffff811115611cf457611cf46114b7565b611d0881611d02845461196c565b84611c8f565b602080601f831160018114611d5b5760008415611d255750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855561102d565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015611da857888601518255948401946001909101908401611d89565b5085821015611de457878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611e3960a0830184611441565b97965050505050505056fea26469706673582212202cb990f2ab4fb6c2589e6fc23513a2c2f55f65463acbffae29db00a62968884264736f6c63430008120033"; +const _bytecode = "0x60806040523480156200001157600080fd5b50604051620021ed380380620021ed833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b611e7a80620003736000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c80634e1273f411610081578063a22cb4651161005b578063a22cb46514610234578063e985e9c514610247578063f242432a14610290576100d3565b80634e1273f4146101f95780636c0360eb146102195780637e518ec814610221576100d3565b80630e89341c116100b25780630e89341c146101be5780631ea430d4146101d15780632eb2c2d6146101e6576100d3565b8062fdd58e1461016057806301ffc9a71461018657806306fdde03146101a9575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d657461646174614d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61017361016e3660046113a8565b6102a3565b6040519081526020015b60405180910390f35b610199610194366004611400565b6102d9565b604051901515815260200161017d565b6101b16102e4565b60405161017d919061148b565b6101b16101cc36600461149e565b610372565b6101e46101df3660046115c4565b6103a6565b005b6101e46101f4366004611697565b6103b2565b61020c610207366004611741565b610556565b60405161017d919061183c565b6101b16106f6565b6101e461022f36600461184f565b610703565b6101e4610242366004611898565b61070c565b6101996102553660046118d4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101e461029e366004611907565b6107a3565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006102d382610940565b600380546102f19061196c565b80601f016020809104026020016040519081016040528092919081815260200182805461031d9061196c565b801561036a5780601f1061033f5761010080835404028352916020019161036a565b820191906000526020600020905b81548152906001019060200180831161034d57829003601f168201915b505050505081565b6060600261037f8361099c565b6040516020016103909291906119bf565b6040516020818303038152906040529050919050565b6103af81610afc565b50565b3373ffffffffffffffffffffffffffffffffffffffff86161480610406575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610492576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610157565b61054185858585610c47565b61054f858585855a86610eac565b5050505050565b606081518351146105e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610157565b6000835167ffffffffffffffff811115610605576106056114b7565b60405190808252806020026020018201604052801561062e578160200160208202803683370190505b50905060005b84518110156106ee5760008086838151811061065257610652611a8c565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106a8576106a8611a8c565b60200260200101518152602001908152602001600020548282815181106106d1576106d1611a8c565b6020908102919091010152806106e681611aea565b915050610634565b509392505050565b600280546102f19061196c565b6103af81611035565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff861614806107f7575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610883576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610926576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610157565b61093285858585611045565b61054f858585855a86611129565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161099357506001919050565b6102d3826112a8565b6060816000036109df57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a0957806109f381611aea565b9150610a029050600a83611b22565b91506109e3565b60008167ffffffffffffffff811115610a2457610a246114b7565b6040519080825280601f01601f191660200182016040528015610a4e576020820181803683370190505b509050815b8515610af357610a64600182611b5d565b90506000610a73600a88611b22565b610a7e90600a611b70565b610a889088611b5d565b610a93906030611b87565b905060008160f81b905080848481518110610ab057610ab0611a8c565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610aea600a89611b22565b97505050610a53565b50949350505050565b600060028054610b0b9061196c565b80601f0160208091040260200160405190810160405280929190818152602001828054610b379061196c565b8015610b845780601f10610b5957610100808354040283529160200191610b84565b820191906000526020600020905b815481529060010190602001808311610b6757829003601f168201915b50505050509050606060005b8351811015610c415782610bbc858381518110610baf57610baf611a8c565b602002602001015161099c565b604051602001610bcd929190611ba0565b6040516020818303038152906040529150838181518110610bf057610bf0611a8c565b60200260200101517f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b83604051610c27919061148b565b60405180910390a280610c3981611aea565b915050610b90565b50505050565b8051825114610cd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610157565b815160005b81811015610e2657828181518110610cf757610cf7611a8c565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d5157610d51611a8c565b602002602001015181526020019081526020016000206000828254610d769190611b5d565b92505081905550828181518110610d8f57610d8f611a8c565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610de957610de9611a8c565b602002602001015181526020019081526020016000206000828254610e0e9190611bc6565b90915550819050610e1e81611aea565b915050610cdd565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e9d929190611bd9565b60405180910390a45050505050565b610ecb8573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f14959493929190611c07565b60206040518083038160008887f1158015610f33573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f589190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610157565b505b505050505050565b60026110418282611cda565b5050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611083908490611b5d565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110c6908490611bc6565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6111488573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401611191959493929190611df4565b60206040518083038160008887f11580156111b0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111d59190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610157565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016112fb57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102d3565b6000813f801580159061137857507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146113a357600080fd5b919050565b600080604083850312156113bb57600080fd5b6113c48361137f565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146103af57600080fd5b60006020828403121561141257600080fd5b8135611378816113d2565b60005b83811015611438578181015183820152602001611420565b50506000910152565b6000815180845261145981602086016020860161141d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006113786020830184611441565b6000602082840312156114b057600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561152d5761152d6114b7565b604052919050565b600067ffffffffffffffff82111561154f5761154f6114b7565b5060051b60200190565b600082601f83011261156a57600080fd5b8135602061157f61157a83611535565b6114e6565b82815260059290921b8401810191818101908684111561159e57600080fd5b8286015b848110156115b957803583529183019183016115a2565b509695505050505050565b6000602082840312156115d657600080fd5b813567ffffffffffffffff8111156115ed57600080fd5b6115f984828501611559565b949350505050565b600067ffffffffffffffff83111561161b5761161b6114b7565b61164c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f860116016114e6565b905082815283838301111561166057600080fd5b828260208301376000602084830101529392505050565b600082601f83011261168857600080fd5b61137883833560208501611601565b600080600080600060a086880312156116af57600080fd5b6116b88661137f565b94506116c66020870161137f565b9350604086013567ffffffffffffffff808211156116e357600080fd5b6116ef89838a01611559565b9450606088013591508082111561170557600080fd5b61171189838a01611559565b9350608088013591508082111561172757600080fd5b5061173488828901611677565b9150509295509295909350565b6000806040838503121561175457600080fd5b823567ffffffffffffffff8082111561176c57600080fd5b818501915085601f83011261178057600080fd5b8135602061179061157a83611535565b82815260059290921b840181019181810190898411156117af57600080fd5b948201945b838610156117d4576117c58661137f565b825294820194908201906117b4565b965050860135925050808211156117ea57600080fd5b506117f785828601611559565b9150509250929050565b600081518084526020808501945080840160005b8381101561183157815187529582019590820190600101611815565b509495945050505050565b6020815260006113786020830184611801565b60006020828403121561186157600080fd5b813567ffffffffffffffff81111561187857600080fd5b8201601f8101841361188957600080fd5b6115f984823560208401611601565b600080604083850312156118ab57600080fd5b6118b48361137f565b9150602083013580151581146118c957600080fd5b809150509250929050565b600080604083850312156118e757600080fd5b6118f08361137f565b91506118fe6020840161137f565b90509250929050565b600080600080600060a0868803121561191f57600080fd5b6119288661137f565b94506119366020870161137f565b93506040860135925060608601359150608086013567ffffffffffffffff81111561196057600080fd5b61173488828901611677565b600181811c9082168061198057607f821691505b6020821081036119b9577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008084546119cd8161196c565b600182811680156119e55760018114611a1857611a47565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0084168752821515830287019450611a47565b8860005260208060002060005b85811015611a3e5781548a820152908401908201611a25565b50505082870194505b505050508351611a5b81836020880161141d565b7f2e6a736f6e0000000000000000000000000000000000000000000000000000009101908152600501949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b1b57611b1b611abb565b5060010190565b600082611b58577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156102d3576102d3611abb565b80820281158282048414176102d3576102d3611abb565b60ff81811683821601908111156102d3576102d3611abb565b60008351611bb281846020880161141d565b835190830190611a5b81836020880161141d565b808201808211156102d3576102d3611abb565b604081526000611bec6040830185611801565b8281036020840152611bfe8185611801565b95945050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4060a0830186611801565b8281036060840152611c528186611801565b90508281036080840152611c668185611441565b98975050505050505050565b600060208284031215611c8457600080fd5b8151611378816113d2565b601f821115611cd557600081815260208120601f850160051c81016020861015611cb65750805b601f850160051c820191505b8181101561102d57828155600101611cc2565b505050565b815167ffffffffffffffff811115611cf457611cf46114b7565b611d0881611d02845461196c565b84611c8f565b602080601f831160018114611d5b5760008415611d255750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855561102d565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015611da857888601518255948401946001909101908401611d89565b5085821015611de457878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611e3960a0830184611441565b97965050505050505056fea2646970667358221220f455c6a46a06091718800aa11c3e419215e2d12b477fef504799d91abe3e489264736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155MetadataMock__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/ERC1155MintBurnMock__factory.d.ts b/src/adapter/factories/mocks/ERC1155MintBurnMock__factory.d.ts index 5a714b8..5ab12f8 100644 --- a/src/adapter/factories/mocks/ERC1155MintBurnMock__factory.d.ts +++ b/src/adapter/factories/mocks/ERC1155MintBurnMock__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155MintBurnMock__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC1155MintBurnMock; connect(signer: Signer): ERC1155MintBurnMock__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620025a3380380620025a3833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61223080620003736000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c80636c0360eb1161008c578063bd7a6c4111610066578063bd7a6c411461025d578063d7a0ad9014610270578063e985e9c514610283578063f242432a146102cc576100e9565b80636c0360eb1461022f578063a22cb46514610237578063a3f091f51461024a576100e9565b80630e89341c116100c85780630e89341c146101d45780632eb2c2d6146101e7578063437ecbe9146101fc5780634e1273f41461020f576100e9565b8062fdd58e1461017657806301ffc9a71461019c57806306fdde03146101bf575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61018961018436600461178c565b6102df565b6040519081526020015b60405180910390f35b6101af6101aa3660046117e7565b610315565b6040519015158152602001610193565b6101c7610320565b6040516101939190611872565b6101c76101e2366004611885565b6103ae565b6101fa6101f5366004611a39565b6103e2565b005b6101fa61020a366004611ae3565b610586565b61022261021d366004611b16565b610596565b6040516101939190611c11565b6101c7610736565b6101fa610245366004611c24565b610743565b6101fa610258366004611c60565b6107da565b6101fa61026b366004611cc1565b6107ec565b6101fa61027e366004611d35565b6107f7565b6101af610291366004611dc2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101fa6102da366004611df5565b610803565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061030f826109a0565b6003805461032d90611e5a565b80601f016020809104026020016040519081016040528092919081815260200182805461035990611e5a565b80156103a65780601f1061037b576101008083540402835291602001916103a6565b820191906000526020600020905b81548152906001019060200180831161038957829003601f168201915b505050505081565b606060026103bb836109fc565b6040516020016103cc929190611ec9565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610436575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6104c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161016d565b61057185858585610b5c565b61057f858585855a86610dc1565b5050505050565b610591838383610f4a565b505050565b60608151835114610629576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161016d565b6000835167ffffffffffffffff8111156106455761064561189e565b60405190808252806020026020018201604052801561066e578160200160208202803683370190505b50905060005b845181101561072e5760008086838151811061069257610692611fd6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106e8576106e8611fd6565b602002602001015181526020019081526020016000205482828151811061071157610711611fd6565b60209081029190910101528061072681612034565b915050610674565b509392505050565b6002805461032d90611e5a565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6107e684848484610fe8565b50505050565b610591838383611090565b6107e68484848461125c565b3373ffffffffffffffffffffffffffffffffffffffff86161480610857575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6108e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161016d565b61099285858585611432565b61057f858585855a8661150d565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016109f357506001919050565b61030f8261168c565b606081600003610a3f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a695780610a5381612034565b9150610a629050600a8361206c565b9150610a43565b60008167ffffffffffffffff811115610a8457610a8461189e565b6040519080825280601f01601f191660200182016040528015610aae576020820181803683370190505b509050815b8515610b5357610ac46001826120a7565b90506000610ad3600a8861206c565b610ade90600a6120ba565b610ae890886120a7565b610af39060306120d1565b905060008160f81b905080848481518110610b1057610b10611fd6565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610b4a600a8961206c565b97505050610ab3565b50949350505050565b8051825114610bed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161016d565b815160005b81811015610d3b57828181518110610c0c57610c0c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610c6657610c66611fd6565b602002602001015181526020019081526020016000206000828254610c8b91906120a7565b92505081905550828181518110610ca457610ca4611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610cfe57610cfe611fd6565b602002602001015181526020019081526020016000206000828254610d2391906120ea565b90915550819050610d3381612034565b915050610bf2565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610db29291906120fd565b60405180910390a45050505050565b610de08573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610e29959493929190612122565b60206040518083038160008887f1158015610e48573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e6d919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161016d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610f889084906120a7565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906110269084906120ea565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46107e660008585855a8661150d565b815181518114611122576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b60005b818110156111d65782818151811061113f5761113f611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061119957611199611fd6565b6020026020010151815260200190815260200160002060008282546111be91906120a7565b909155508190506111ce81612034565b915050611125565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161124e9291906120fd565b60405180910390a450505050565b81518351146112ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b825160005b818110156113a35783818151811061130c5761130c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087848151811061136657611366611fd6565b60200260200101518152602001908152602001600020600082825461138b91906120ea565b9091555081905061139b81612034565b9150506112f2565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb878760405161141b9291906120fd565b60405180910390a461057f60008686865a87610dc1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906114709084906120a7565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906114b39084906120ea565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910161124e565b61152c8573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016115759594939291906121aa565b60206040518083038160008887f1158015611594573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906115b9919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161016d565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016116df57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461030f565b6000813f801580159061175c57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461178757600080fd5b919050565b6000806040838503121561179f57600080fd5b6117a883611763565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146117e457600080fd5b50565b6000602082840312156117f957600080fd5b813561175c816117b6565b60005b8381101561181f578181015183820152602001611807565b50506000910152565b60008151808452611840816020860160208601611804565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061175c6020830184611828565b60006020828403121561189757600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156119145761191461189e565b604052919050565b600067ffffffffffffffff8211156119365761193661189e565b5060051b60200190565b600082601f83011261195157600080fd5b813560206119666119618361191c565b6118cd565b82815260059290921b8401810191818101908684111561198557600080fd5b8286015b848110156119a05780358352918301918301611989565b509695505050505050565b600082601f8301126119bc57600080fd5b813567ffffffffffffffff8111156119d6576119d661189e565b611a0760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116016118cd565b818152846020838601011115611a1c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611a5157600080fd5b611a5a86611763565b9450611a6860208701611763565b9350604086013567ffffffffffffffff80821115611a8557600080fd5b611a9189838a01611940565b94506060880135915080821115611aa757600080fd5b611ab389838a01611940565b93506080880135915080821115611ac957600080fd5b50611ad6888289016119ab565b9150509295509295909350565b600080600060608486031215611af857600080fd5b611b0184611763565b95602085013595506040909401359392505050565b60008060408385031215611b2957600080fd5b823567ffffffffffffffff80821115611b4157600080fd5b818501915085601f830112611b5557600080fd5b81356020611b656119618361191c565b82815260059290921b84018101918181019089841115611b8457600080fd5b948201945b83861015611ba957611b9a86611763565b82529482019490820190611b89565b96505086013592505080821115611bbf57600080fd5b50611bcc85828601611940565b9150509250929050565b600081518084526020808501945080840160005b83811015611c0657815187529582019590820190600101611bea565b509495945050505050565b60208152600061175c6020830184611bd6565b60008060408385031215611c3757600080fd5b611c4083611763565b915060208301358015158114611c5557600080fd5b809150509250929050565b60008060008060808587031215611c7657600080fd5b611c7f85611763565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ca957600080fd5b611cb5878288016119ab565b91505092959194509250565b600080600060608486031215611cd657600080fd5b611cdf84611763565b9250602084013567ffffffffffffffff80821115611cfc57600080fd5b611d0887838801611940565b93506040860135915080821115611d1e57600080fd5b50611d2b86828701611940565b9150509250925092565b60008060008060808587031215611d4b57600080fd5b611d5485611763565b9350602085013567ffffffffffffffff80821115611d7157600080fd5b611d7d88838901611940565b94506040870135915080821115611d9357600080fd5b611d9f88838901611940565b93506060870135915080821115611db557600080fd5b50611cb5878288016119ab565b60008060408385031215611dd557600080fd5b611dde83611763565b9150611dec60208401611763565b90509250929050565b600080600080600060a08688031215611e0d57600080fd5b611e1686611763565b9450611e2460208701611763565b93506040860135925060608601359150608086013567ffffffffffffffff811115611e4e57600080fd5b611ad6888289016119ab565b600181811c90821680611e6e57607f821691505b602082108103611ea7577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151611ebf818560208601611804565b9290920192915050565b600080845481600182811c915080831680611ee557607f831692505b60208084108203611f1d577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015611f315760018114611f6457611f91565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650611f91565b60008b81526020902060005b86811015611f895781548b820152908501908301611f70565b505084890196505b505050505050611fcd611fa48286611ead565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361206557612065612005565b5060010190565b6000826120a2577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b8181038181111561030f5761030f612005565b808202811582820484141761030f5761030f612005565b60ff818116838216019081111561030f5761030f612005565b8082018082111561030f5761030f612005565b6040815260006121106040830185611bd6565b8281036020840152611fcd8185611bd6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261215b60a0830186611bd6565b828103606084015261216d8186611bd6565b905082810360808401526121818185611828565b98975050505050505050565b60006020828403121561219f57600080fd5b815161175c816117b6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526121ef60a0830184611828565b97965050505050505056fea2646970667358221220f5b18ed35bfc54916a1e225ca9b46bfa95edcf695796f42ead8cb0d4be4e1f1664736f6c63430008120033"; + static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620025a3380380620025a3833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61223080620003736000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c80636c0360eb1161008c578063bd7a6c4111610066578063bd7a6c411461025d578063d7a0ad9014610270578063e985e9c514610283578063f242432a146102cc576100e9565b80636c0360eb1461022f578063a22cb46514610237578063a3f091f51461024a576100e9565b80630e89341c116100c85780630e89341c146101d45780632eb2c2d6146101e7578063437ecbe9146101fc5780634e1273f41461020f576100e9565b8062fdd58e1461017657806301ffc9a71461019c57806306fdde03146101bf575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61018961018436600461178c565b6102df565b6040519081526020015b60405180910390f35b6101af6101aa3660046117e7565b610315565b6040519015158152602001610193565b6101c7610320565b6040516101939190611872565b6101c76101e2366004611885565b6103ae565b6101fa6101f5366004611a39565b6103e2565b005b6101fa61020a366004611ae3565b610586565b61022261021d366004611b16565b610596565b6040516101939190611c11565b6101c7610736565b6101fa610245366004611c24565b610743565b6101fa610258366004611c60565b6107da565b6101fa61026b366004611cc1565b6107ec565b6101fa61027e366004611d35565b6107f7565b6101af610291366004611dc2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101fa6102da366004611df5565b610803565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061030f826109a0565b6003805461032d90611e5a565b80601f016020809104026020016040519081016040528092919081815260200182805461035990611e5a565b80156103a65780601f1061037b576101008083540402835291602001916103a6565b820191906000526020600020905b81548152906001019060200180831161038957829003601f168201915b505050505081565b606060026103bb836109fc565b6040516020016103cc929190611ec9565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610436575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6104c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161016d565b61057185858585610b5c565b61057f858585855a86610dc1565b5050505050565b610591838383610f4a565b505050565b60608151835114610629576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161016d565b6000835167ffffffffffffffff8111156106455761064561189e565b60405190808252806020026020018201604052801561066e578160200160208202803683370190505b50905060005b845181101561072e5760008086838151811061069257610692611fd6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106e8576106e8611fd6565b602002602001015181526020019081526020016000205482828151811061071157610711611fd6565b60209081029190910101528061072681612034565b915050610674565b509392505050565b6002805461032d90611e5a565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6107e684848484610fe8565b50505050565b610591838383611090565b6107e68484848461125c565b3373ffffffffffffffffffffffffffffffffffffffff86161480610857575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6108e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161016d565b61099285858585611432565b61057f858585855a8661150d565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016109f357506001919050565b61030f8261168c565b606081600003610a3f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a695780610a5381612034565b9150610a629050600a8361206c565b9150610a43565b60008167ffffffffffffffff811115610a8457610a8461189e565b6040519080825280601f01601f191660200182016040528015610aae576020820181803683370190505b509050815b8515610b5357610ac46001826120a7565b90506000610ad3600a8861206c565b610ade90600a6120ba565b610ae890886120a7565b610af39060306120d1565b905060008160f81b905080848481518110610b1057610b10611fd6565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610b4a600a8961206c565b97505050610ab3565b50949350505050565b8051825114610bed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161016d565b815160005b81811015610d3b57828181518110610c0c57610c0c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610c6657610c66611fd6565b602002602001015181526020019081526020016000206000828254610c8b91906120a7565b92505081905550828181518110610ca457610ca4611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610cfe57610cfe611fd6565b602002602001015181526020019081526020016000206000828254610d2391906120ea565b90915550819050610d3381612034565b915050610bf2565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610db29291906120fd565b60405180910390a45050505050565b610de08573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610e29959493929190612122565b60206040518083038160008887f1158015610e48573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e6d919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161016d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610f889084906120a7565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906110269084906120ea565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46107e660008585855a8661150d565b815181518114611122576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b60005b818110156111d65782818151811061113f5761113f611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061119957611199611fd6565b6020026020010151815260200190815260200160002060008282546111be91906120a7565b909155508190506111ce81612034565b915050611125565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161124e9291906120fd565b60405180910390a450505050565b81518351146112ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b825160005b818110156113a35783818151811061130c5761130c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087848151811061136657611366611fd6565b60200260200101518152602001908152602001600020600082825461138b91906120ea565b9091555081905061139b81612034565b9150506112f2565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb878760405161141b9291906120fd565b60405180910390a461057f60008686865a87610dc1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906114709084906120a7565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906114b39084906120ea565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910161124e565b61152c8573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016115759594939291906121aa565b60206040518083038160008887f1158015611594573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906115b9919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161016d565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016116df57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461030f565b6000813f801580159061175c57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461178757600080fd5b919050565b6000806040838503121561179f57600080fd5b6117a883611763565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146117e457600080fd5b50565b6000602082840312156117f957600080fd5b813561175c816117b6565b60005b8381101561181f578181015183820152602001611807565b50506000910152565b60008151808452611840816020860160208601611804565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061175c6020830184611828565b60006020828403121561189757600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156119145761191461189e565b604052919050565b600067ffffffffffffffff8211156119365761193661189e565b5060051b60200190565b600082601f83011261195157600080fd5b813560206119666119618361191c565b6118cd565b82815260059290921b8401810191818101908684111561198557600080fd5b8286015b848110156119a05780358352918301918301611989565b509695505050505050565b600082601f8301126119bc57600080fd5b813567ffffffffffffffff8111156119d6576119d661189e565b611a0760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116016118cd565b818152846020838601011115611a1c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611a5157600080fd5b611a5a86611763565b9450611a6860208701611763565b9350604086013567ffffffffffffffff80821115611a8557600080fd5b611a9189838a01611940565b94506060880135915080821115611aa757600080fd5b611ab389838a01611940565b93506080880135915080821115611ac957600080fd5b50611ad6888289016119ab565b9150509295509295909350565b600080600060608486031215611af857600080fd5b611b0184611763565b95602085013595506040909401359392505050565b60008060408385031215611b2957600080fd5b823567ffffffffffffffff80821115611b4157600080fd5b818501915085601f830112611b5557600080fd5b81356020611b656119618361191c565b82815260059290921b84018101918181019089841115611b8457600080fd5b948201945b83861015611ba957611b9a86611763565b82529482019490820190611b89565b96505086013592505080821115611bbf57600080fd5b50611bcc85828601611940565b9150509250929050565b600081518084526020808501945080840160005b83811015611c0657815187529582019590820190600101611bea565b509495945050505050565b60208152600061175c6020830184611bd6565b60008060408385031215611c3757600080fd5b611c4083611763565b915060208301358015158114611c5557600080fd5b809150509250929050565b60008060008060808587031215611c7657600080fd5b611c7f85611763565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ca957600080fd5b611cb5878288016119ab565b91505092959194509250565b600080600060608486031215611cd657600080fd5b611cdf84611763565b9250602084013567ffffffffffffffff80821115611cfc57600080fd5b611d0887838801611940565b93506040860135915080821115611d1e57600080fd5b50611d2b86828701611940565b9150509250925092565b60008060008060808587031215611d4b57600080fd5b611d5485611763565b9350602085013567ffffffffffffffff80821115611d7157600080fd5b611d7d88838901611940565b94506040870135915080821115611d9357600080fd5b611d9f88838901611940565b93506060870135915080821115611db557600080fd5b50611cb5878288016119ab565b60008060408385031215611dd557600080fd5b611dde83611763565b9150611dec60208401611763565b90509250929050565b600080600080600060a08688031215611e0d57600080fd5b611e1686611763565b9450611e2460208701611763565b93506040860135925060608601359150608086013567ffffffffffffffff811115611e4e57600080fd5b611ad6888289016119ab565b600181811c90821680611e6e57607f821691505b602082108103611ea7577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151611ebf818560208601611804565b9290920192915050565b600080845481600182811c915080831680611ee557607f831692505b60208084108203611f1d577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015611f315760018114611f6457611f91565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650611f91565b60008b81526020902060005b86811015611f895781548b820152908501908301611f70565b505084890196505b505050505050611fcd611fa48286611ead565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361206557612065612005565b5060010190565b6000826120a2577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b8181038181111561030f5761030f612005565b808202811582820484141761030f5761030f612005565b60ff818116838216019081111561030f5761030f612005565b8082018082111561030f5761030f612005565b6040815260006121106040830185611bd6565b8281036020840152611fcd8185611bd6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261215b60a0830186611bd6565b828103606084015261216d8186611bd6565b905082810360808401526121818185611828565b98975050505050505050565b60006020828403121561219f57600080fd5b815161175c816117b6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526121ef60a0830184611828565b97965050505050505056fea264697066735822122021876f9937e5ba8a158335f30cd393ae80ee3b8f65906e170ca236e1700c308564736f6c63430008120033"; static readonly abi: ({ inputs: { internalType: string; diff --git a/src/adapter/factories/mocks/ERC1155MintBurnMock__factory.js b/src/adapter/factories/mocks/ERC1155MintBurnMock__factory.js index 337bdf5..6a5e2d2 100644 --- a/src/adapter/factories/mocks/ERC1155MintBurnMock__factory.js +++ b/src/adapter/factories/mocks/ERC1155MintBurnMock__factory.js @@ -464,7 +464,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x60806040523480156200001157600080fd5b50604051620025a3380380620025a3833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61223080620003736000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c80636c0360eb1161008c578063bd7a6c4111610066578063bd7a6c411461025d578063d7a0ad9014610270578063e985e9c514610283578063f242432a146102cc576100e9565b80636c0360eb1461022f578063a22cb46514610237578063a3f091f51461024a576100e9565b80630e89341c116100c85780630e89341c146101d45780632eb2c2d6146101e7578063437ecbe9146101fc5780634e1273f41461020f576100e9565b8062fdd58e1461017657806301ffc9a71461019c57806306fdde03146101bf575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61018961018436600461178c565b6102df565b6040519081526020015b60405180910390f35b6101af6101aa3660046117e7565b610315565b6040519015158152602001610193565b6101c7610320565b6040516101939190611872565b6101c76101e2366004611885565b6103ae565b6101fa6101f5366004611a39565b6103e2565b005b6101fa61020a366004611ae3565b610586565b61022261021d366004611b16565b610596565b6040516101939190611c11565b6101c7610736565b6101fa610245366004611c24565b610743565b6101fa610258366004611c60565b6107da565b6101fa61026b366004611cc1565b6107ec565b6101fa61027e366004611d35565b6107f7565b6101af610291366004611dc2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101fa6102da366004611df5565b610803565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061030f826109a0565b6003805461032d90611e5a565b80601f016020809104026020016040519081016040528092919081815260200182805461035990611e5a565b80156103a65780601f1061037b576101008083540402835291602001916103a6565b820191906000526020600020905b81548152906001019060200180831161038957829003601f168201915b505050505081565b606060026103bb836109fc565b6040516020016103cc929190611ec9565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610436575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6104c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161016d565b61057185858585610b5c565b61057f858585855a86610dc1565b5050505050565b610591838383610f4a565b505050565b60608151835114610629576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161016d565b6000835167ffffffffffffffff8111156106455761064561189e565b60405190808252806020026020018201604052801561066e578160200160208202803683370190505b50905060005b845181101561072e5760008086838151811061069257610692611fd6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106e8576106e8611fd6565b602002602001015181526020019081526020016000205482828151811061071157610711611fd6565b60209081029190910101528061072681612034565b915050610674565b509392505050565b6002805461032d90611e5a565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6107e684848484610fe8565b50505050565b610591838383611090565b6107e68484848461125c565b3373ffffffffffffffffffffffffffffffffffffffff86161480610857575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6108e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161016d565b61099285858585611432565b61057f858585855a8661150d565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016109f357506001919050565b61030f8261168c565b606081600003610a3f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a695780610a5381612034565b9150610a629050600a8361206c565b9150610a43565b60008167ffffffffffffffff811115610a8457610a8461189e565b6040519080825280601f01601f191660200182016040528015610aae576020820181803683370190505b509050815b8515610b5357610ac46001826120a7565b90506000610ad3600a8861206c565b610ade90600a6120ba565b610ae890886120a7565b610af39060306120d1565b905060008160f81b905080848481518110610b1057610b10611fd6565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610b4a600a8961206c565b97505050610ab3565b50949350505050565b8051825114610bed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161016d565b815160005b81811015610d3b57828181518110610c0c57610c0c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610c6657610c66611fd6565b602002602001015181526020019081526020016000206000828254610c8b91906120a7565b92505081905550828181518110610ca457610ca4611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610cfe57610cfe611fd6565b602002602001015181526020019081526020016000206000828254610d2391906120ea565b90915550819050610d3381612034565b915050610bf2565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610db29291906120fd565b60405180910390a45050505050565b610de08573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610e29959493929190612122565b60206040518083038160008887f1158015610e48573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e6d919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161016d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610f889084906120a7565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906110269084906120ea565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46107e660008585855a8661150d565b815181518114611122576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b60005b818110156111d65782818151811061113f5761113f611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061119957611199611fd6565b6020026020010151815260200190815260200160002060008282546111be91906120a7565b909155508190506111ce81612034565b915050611125565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161124e9291906120fd565b60405180910390a450505050565b81518351146112ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b825160005b818110156113a35783818151811061130c5761130c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087848151811061136657611366611fd6565b60200260200101518152602001908152602001600020600082825461138b91906120ea565b9091555081905061139b81612034565b9150506112f2565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb878760405161141b9291906120fd565b60405180910390a461057f60008686865a87610dc1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906114709084906120a7565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906114b39084906120ea565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910161124e565b61152c8573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016115759594939291906121aa565b60206040518083038160008887f1158015611594573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906115b9919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161016d565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016116df57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461030f565b6000813f801580159061175c57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461178757600080fd5b919050565b6000806040838503121561179f57600080fd5b6117a883611763565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146117e457600080fd5b50565b6000602082840312156117f957600080fd5b813561175c816117b6565b60005b8381101561181f578181015183820152602001611807565b50506000910152565b60008151808452611840816020860160208601611804565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061175c6020830184611828565b60006020828403121561189757600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156119145761191461189e565b604052919050565b600067ffffffffffffffff8211156119365761193661189e565b5060051b60200190565b600082601f83011261195157600080fd5b813560206119666119618361191c565b6118cd565b82815260059290921b8401810191818101908684111561198557600080fd5b8286015b848110156119a05780358352918301918301611989565b509695505050505050565b600082601f8301126119bc57600080fd5b813567ffffffffffffffff8111156119d6576119d661189e565b611a0760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116016118cd565b818152846020838601011115611a1c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611a5157600080fd5b611a5a86611763565b9450611a6860208701611763565b9350604086013567ffffffffffffffff80821115611a8557600080fd5b611a9189838a01611940565b94506060880135915080821115611aa757600080fd5b611ab389838a01611940565b93506080880135915080821115611ac957600080fd5b50611ad6888289016119ab565b9150509295509295909350565b600080600060608486031215611af857600080fd5b611b0184611763565b95602085013595506040909401359392505050565b60008060408385031215611b2957600080fd5b823567ffffffffffffffff80821115611b4157600080fd5b818501915085601f830112611b5557600080fd5b81356020611b656119618361191c565b82815260059290921b84018101918181019089841115611b8457600080fd5b948201945b83861015611ba957611b9a86611763565b82529482019490820190611b89565b96505086013592505080821115611bbf57600080fd5b50611bcc85828601611940565b9150509250929050565b600081518084526020808501945080840160005b83811015611c0657815187529582019590820190600101611bea565b509495945050505050565b60208152600061175c6020830184611bd6565b60008060408385031215611c3757600080fd5b611c4083611763565b915060208301358015158114611c5557600080fd5b809150509250929050565b60008060008060808587031215611c7657600080fd5b611c7f85611763565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ca957600080fd5b611cb5878288016119ab565b91505092959194509250565b600080600060608486031215611cd657600080fd5b611cdf84611763565b9250602084013567ffffffffffffffff80821115611cfc57600080fd5b611d0887838801611940565b93506040860135915080821115611d1e57600080fd5b50611d2b86828701611940565b9150509250925092565b60008060008060808587031215611d4b57600080fd5b611d5485611763565b9350602085013567ffffffffffffffff80821115611d7157600080fd5b611d7d88838901611940565b94506040870135915080821115611d9357600080fd5b611d9f88838901611940565b93506060870135915080821115611db557600080fd5b50611cb5878288016119ab565b60008060408385031215611dd557600080fd5b611dde83611763565b9150611dec60208401611763565b90509250929050565b600080600080600060a08688031215611e0d57600080fd5b611e1686611763565b9450611e2460208701611763565b93506040860135925060608601359150608086013567ffffffffffffffff811115611e4e57600080fd5b611ad6888289016119ab565b600181811c90821680611e6e57607f821691505b602082108103611ea7577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151611ebf818560208601611804565b9290920192915050565b600080845481600182811c915080831680611ee557607f831692505b60208084108203611f1d577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015611f315760018114611f6457611f91565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650611f91565b60008b81526020902060005b86811015611f895781548b820152908501908301611f70565b505084890196505b505050505050611fcd611fa48286611ead565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361206557612065612005565b5060010190565b6000826120a2577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b8181038181111561030f5761030f612005565b808202811582820484141761030f5761030f612005565b60ff818116838216019081111561030f5761030f612005565b8082018082111561030f5761030f612005565b6040815260006121106040830185611bd6565b8281036020840152611fcd8185611bd6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261215b60a0830186611bd6565b828103606084015261216d8186611bd6565b905082810360808401526121818185611828565b98975050505050505050565b60006020828403121561219f57600080fd5b815161175c816117b6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526121ef60a0830184611828565b97965050505050505056fea2646970667358221220f5b18ed35bfc54916a1e225ca9b46bfa95edcf695796f42ead8cb0d4be4e1f1664736f6c63430008120033"; +const _bytecode = "0x60806040523480156200001157600080fd5b50604051620025a3380380620025a3833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61223080620003736000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c80636c0360eb1161008c578063bd7a6c4111610066578063bd7a6c411461025d578063d7a0ad9014610270578063e985e9c514610283578063f242432a146102cc576100e9565b80636c0360eb1461022f578063a22cb46514610237578063a3f091f51461024a576100e9565b80630e89341c116100c85780630e89341c146101d45780632eb2c2d6146101e7578063437ecbe9146101fc5780634e1273f41461020f576100e9565b8062fdd58e1461017657806301ffc9a71461019c57806306fdde03146101bf575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61018961018436600461178c565b6102df565b6040519081526020015b60405180910390f35b6101af6101aa3660046117e7565b610315565b6040519015158152602001610193565b6101c7610320565b6040516101939190611872565b6101c76101e2366004611885565b6103ae565b6101fa6101f5366004611a39565b6103e2565b005b6101fa61020a366004611ae3565b610586565b61022261021d366004611b16565b610596565b6040516101939190611c11565b6101c7610736565b6101fa610245366004611c24565b610743565b6101fa610258366004611c60565b6107da565b6101fa61026b366004611cc1565b6107ec565b6101fa61027e366004611d35565b6107f7565b6101af610291366004611dc2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101fa6102da366004611df5565b610803565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061030f826109a0565b6003805461032d90611e5a565b80601f016020809104026020016040519081016040528092919081815260200182805461035990611e5a565b80156103a65780601f1061037b576101008083540402835291602001916103a6565b820191906000526020600020905b81548152906001019060200180831161038957829003601f168201915b505050505081565b606060026103bb836109fc565b6040516020016103cc929190611ec9565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610436575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6104c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161016d565b61057185858585610b5c565b61057f858585855a86610dc1565b5050505050565b610591838383610f4a565b505050565b60608151835114610629576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161016d565b6000835167ffffffffffffffff8111156106455761064561189e565b60405190808252806020026020018201604052801561066e578160200160208202803683370190505b50905060005b845181101561072e5760008086838151811061069257610692611fd6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106e8576106e8611fd6565b602002602001015181526020019081526020016000205482828151811061071157610711611fd6565b60209081029190910101528061072681612034565b915050610674565b509392505050565b6002805461032d90611e5a565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6107e684848484610fe8565b50505050565b610591838383611090565b6107e68484848461125c565b3373ffffffffffffffffffffffffffffffffffffffff86161480610857575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6108e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161016d565b61099285858585611432565b61057f858585855a8661150d565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016109f357506001919050565b61030f8261168c565b606081600003610a3f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a695780610a5381612034565b9150610a629050600a8361206c565b9150610a43565b60008167ffffffffffffffff811115610a8457610a8461189e565b6040519080825280601f01601f191660200182016040528015610aae576020820181803683370190505b509050815b8515610b5357610ac46001826120a7565b90506000610ad3600a8861206c565b610ade90600a6120ba565b610ae890886120a7565b610af39060306120d1565b905060008160f81b905080848481518110610b1057610b10611fd6565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610b4a600a8961206c565b97505050610ab3565b50949350505050565b8051825114610bed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161016d565b815160005b81811015610d3b57828181518110610c0c57610c0c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610c6657610c66611fd6565b602002602001015181526020019081526020016000206000828254610c8b91906120a7565b92505081905550828181518110610ca457610ca4611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610cfe57610cfe611fd6565b602002602001015181526020019081526020016000206000828254610d2391906120ea565b90915550819050610d3381612034565b915050610bf2565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610db29291906120fd565b60405180910390a45050505050565b610de08573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610e29959493929190612122565b60206040518083038160008887f1158015610e48573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e6d919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161016d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610f889084906120a7565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906110269084906120ea565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46107e660008585855a8661150d565b815181518114611122576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b60005b818110156111d65782818151811061113f5761113f611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061119957611199611fd6565b6020026020010151815260200190815260200160002060008282546111be91906120a7565b909155508190506111ce81612034565b915050611125565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161124e9291906120fd565b60405180910390a450505050565b81518351146112ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b825160005b818110156113a35783818151811061130c5761130c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087848151811061136657611366611fd6565b60200260200101518152602001908152602001600020600082825461138b91906120ea565b9091555081905061139b81612034565b9150506112f2565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb878760405161141b9291906120fd565b60405180910390a461057f60008686865a87610dc1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906114709084906120a7565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906114b39084906120ea565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910161124e565b61152c8573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016115759594939291906121aa565b60206040518083038160008887f1158015611594573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906115b9919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161016d565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016116df57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461030f565b6000813f801580159061175c57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461178757600080fd5b919050565b6000806040838503121561179f57600080fd5b6117a883611763565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146117e457600080fd5b50565b6000602082840312156117f957600080fd5b813561175c816117b6565b60005b8381101561181f578181015183820152602001611807565b50506000910152565b60008151808452611840816020860160208601611804565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061175c6020830184611828565b60006020828403121561189757600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156119145761191461189e565b604052919050565b600067ffffffffffffffff8211156119365761193661189e565b5060051b60200190565b600082601f83011261195157600080fd5b813560206119666119618361191c565b6118cd565b82815260059290921b8401810191818101908684111561198557600080fd5b8286015b848110156119a05780358352918301918301611989565b509695505050505050565b600082601f8301126119bc57600080fd5b813567ffffffffffffffff8111156119d6576119d661189e565b611a0760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116016118cd565b818152846020838601011115611a1c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611a5157600080fd5b611a5a86611763565b9450611a6860208701611763565b9350604086013567ffffffffffffffff80821115611a8557600080fd5b611a9189838a01611940565b94506060880135915080821115611aa757600080fd5b611ab389838a01611940565b93506080880135915080821115611ac957600080fd5b50611ad6888289016119ab565b9150509295509295909350565b600080600060608486031215611af857600080fd5b611b0184611763565b95602085013595506040909401359392505050565b60008060408385031215611b2957600080fd5b823567ffffffffffffffff80821115611b4157600080fd5b818501915085601f830112611b5557600080fd5b81356020611b656119618361191c565b82815260059290921b84018101918181019089841115611b8457600080fd5b948201945b83861015611ba957611b9a86611763565b82529482019490820190611b89565b96505086013592505080821115611bbf57600080fd5b50611bcc85828601611940565b9150509250929050565b600081518084526020808501945080840160005b83811015611c0657815187529582019590820190600101611bea565b509495945050505050565b60208152600061175c6020830184611bd6565b60008060408385031215611c3757600080fd5b611c4083611763565b915060208301358015158114611c5557600080fd5b809150509250929050565b60008060008060808587031215611c7657600080fd5b611c7f85611763565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ca957600080fd5b611cb5878288016119ab565b91505092959194509250565b600080600060608486031215611cd657600080fd5b611cdf84611763565b9250602084013567ffffffffffffffff80821115611cfc57600080fd5b611d0887838801611940565b93506040860135915080821115611d1e57600080fd5b50611d2b86828701611940565b9150509250925092565b60008060008060808587031215611d4b57600080fd5b611d5485611763565b9350602085013567ffffffffffffffff80821115611d7157600080fd5b611d7d88838901611940565b94506040870135915080821115611d9357600080fd5b611d9f88838901611940565b93506060870135915080821115611db557600080fd5b50611cb5878288016119ab565b60008060408385031215611dd557600080fd5b611dde83611763565b9150611dec60208401611763565b90509250929050565b600080600080600060a08688031215611e0d57600080fd5b611e1686611763565b9450611e2460208701611763565b93506040860135925060608601359150608086013567ffffffffffffffff811115611e4e57600080fd5b611ad6888289016119ab565b600181811c90821680611e6e57607f821691505b602082108103611ea7577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151611ebf818560208601611804565b9290920192915050565b600080845481600182811c915080831680611ee557607f831692505b60208084108203611f1d577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015611f315760018114611f6457611f91565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650611f91565b60008b81526020902060005b86811015611f895781548b820152908501908301611f70565b505084890196505b505050505050611fcd611fa48286611ead565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361206557612065612005565b5060010190565b6000826120a2577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b8181038181111561030f5761030f612005565b808202811582820484141761030f5761030f612005565b60ff818116838216019081111561030f5761030f612005565b8082018082111561030f5761030f612005565b6040815260006121106040830185611bd6565b8281036020840152611fcd8185611bd6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261215b60a0830186611bd6565b828103606084015261216d8186611bd6565b905082810360808401526121818185611828565b98975050505050505050565b60006020828403121561219f57600080fd5b815161175c816117b6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526121ef60a0830184611828565b97965050505050505056fea264697066735822122021876f9937e5ba8a158335f30cd393ae80ee3b8f65906e170ca236e1700c308564736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155MintBurnMock__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/ERC1155MintBurnPackedBalanceMock__factory.d.ts b/src/adapter/factories/mocks/ERC1155MintBurnPackedBalanceMock__factory.d.ts index 2fd37dc..6e7b4cd 100644 --- a/src/adapter/factories/mocks/ERC1155MintBurnPackedBalanceMock__factory.d.ts +++ b/src/adapter/factories/mocks/ERC1155MintBurnPackedBalanceMock__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155MintBurnPackedBalanceMock__factory extends ContractF }): TransactionRequest; attach(address: string): ERC1155MintBurnPackedBalanceMock; connect(signer: Signer): ERC1155MintBurnPackedBalanceMock__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162002e0738038062002e07833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b612a9480620003736000396000f3fe608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063a22cb46511610097578063db90e83c11610066578063db90e83c14610299578063e985e9c5146102c1578063eaec5f811461030a578063f242432a1461031d576100ff565b8063a22cb4651461024d578063a3f091f514610260578063bd7a6c4114610273578063d7a0ad9014610286576100ff565b80632eb2c2d6116100d35780632eb2c2d6146101fd578063437ecbe9146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611e57565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611eb2565b610387565b60405190151581526020016101a9565b6101dd610392565b6040516101a99190611f3d565b6101dd6101f8366004611f50565b610420565b61021061020b366004612104565b610454565b005b6102106102203660046121ae565b6105f8565b6102386102333660046121e1565b610608565b6040516101a991906122dc565b6101dd610902565b61021061025b3660046122ef565b61090f565b61021061026e36600461232b565b6109a6565b61021061028136600461238c565b6109b8565b610210610294366004612400565b6109c3565b6102ac6102a7366004611f50565b6109cf565b604080519283526020830191909152016101a9565b6101c56102cf36600461248d565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61019f6103183660046124c0565b610a09565b61021061032b3660046124e2565b610a37565b600080600061033e846109cf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061037c9082610a09565b925050505b92915050565b600061038182610bd4565b6003805461039f90612547565b80601f01602080910402602001604051908101604052809291908181526020018280546103cb90612547565b80156104185780601f106103ed57610100808354040283529160200191610418565b820191906000526020600020905b8154815290600101906020018083116103fb57829003601f168201915b505050505081565b6060600261042d83610c30565b60405160200161043e9291906125b6565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806104a8575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f52000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610183565b6105e385858585610d90565b6105f1858585855a866111f3565b5050505050565b6106038383836113a2565b505050565b8151815160609190811461069e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610183565b6000806106c4856000815181106106b7576106b76126c3565b60200260200101516109cf565b915091506000806000886000815181106106e0576106e06126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561075657610756611f69565b60405190808252806020026020018201604052801561077f578160200160208202803683370190505b50905061078c8385610a09565b8160008151811061079f5761079f6126c3565b602090810291909101015260015b868110156108f5576107ca8982815181106106b7576106b76126c3565b9096509450828614158061084857508981815181106107eb576107eb6126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a6001836108179190612721565b81518110610827576108276126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156108bc576000808b8381518110610862576108626126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6108c68486610a09565b8282815181106108d8576108d86126c3565b6020908102919091010152806108ed81612734565b9150506107ad565b5098975050505050505050565b6002805461039f90612547565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6109b28484848461140a565b50505050565b61060383838361147c565b6109b2848484846115f0565b6000806109df602061010061279b565b6109e9908461279b565b91506109f8602061010061279b565b610a0290846127af565b9050915091565b600080610a1c6001640100000000612721565b90506000610a2b8460206127c3565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610a8b575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610bba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610183565b610bc685858585611851565b6105f1858585855a866118c0565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610c2757506001919050565b61038182611a65565b606081600003610c7357505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610c9d5780610c8781612734565b9150610c969050600a8361279b565b9150610c77565b60008167ffffffffffffffff811115610cb857610cb8611f69565b6040519080825280601f01601f191660200182016040528015610ce2576020820181803683370190505b509050815b8515610d8757610cf8600182612721565b90506000610d07600a8861279b565b610d1290600a6127c3565b610d1c9088612721565b610d279060306127da565b905060008160f81b905080848481518110610d4457610d446126c3565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610d7e600a8961279b565b97505050610ce7565b50949350505050565b815181518114610e48576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610183565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610e845750600081115b1561108457600080610ea2856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610f009190849088908590610ef157610ef16126c3565b60200260200101516001611b02565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610f5c9190859089908590610f4d57610f4d6126c3565b60200260200101516000611b02565b90508360015b8681101561103257610f7f8982815181106106b7576106b76126c3565b9096509450818614610fee5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b61100584868a8481518110610ef157610ef16126c3565b935061101e83868a8481518110610f4d57610f4d6126c3565b92508061102a81612734565b915050610f62565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a1681528082528381209581529490529220919091555061116e565b60005b8181101561116c578281815181106110a1576110a16126c3565b60200260200101516110cc878684815181106110bf576110bf6126c3565b6020026020010151610330565b101561115a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610183565b8061116481612734565b915050611087565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111e49291906127f3565b60405180910390a45050505050565b6112128573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161125b959493929190612818565b60206040518083038160008887f115801561127a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061129f9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610183565b505b505050505050565b6113af8383836001611da7565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6114178484846000611da7565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46109b260008585855a866118c0565b81518151811461150e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e4754480000006064820152608401610183565b60005b8181101561156a576115588585838151811061152f5761152f6126c3565b6020026020010151858481518110611549576115496126c3565b60200260200101516001611da7565b8061156281612734565b915050611511565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516115e29291906127f3565b60405180910390a450505050565b8151835114611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e47544800006064820152608401610183565b8251156117c3576000806116a1856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091528120548751939550919350916116f09190849088908590610f4d57610f4d6126c3565b86519091508360015b8281101561178a576117168982815181106106b7576106b76126c3565b909650945081861461175f5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b61177684868a8481518110610f4d57610f4d6126c3565b93508061178281612734565b9150506116f9565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161183a9291906127f3565b60405180910390a46109b260008585855a866111f3565b61185e8483836001611da7565b61186b8383836000611da7565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016115e2565b6118df8573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016119289594939291906128a0565b60206040518083038160008887f1158015611947573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061196c9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611ab857506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610381565b600080611b108560206127c3565b90506000611b246001640100000000612721565b90506000846001811115611b3a57611b3a6128f0565b03611bf957611b4b85831b8861291f565b9250611b5960206002612a52565b611b678689851c841661291f565b10611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610183565b611d63565b6001846001811115611c0d57611c0d6128f0565b03611cb557611c1e85831b88612721565b925084818389901c161015611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610183565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610183565b5050949350505050565b6000813f8015801590611da057507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b600080611db3856109cf565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150611df390828686611b02565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611e5257600080fd5b919050565b60008060408385031215611e6a57600080fd5b611e7383611e2e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611eaf57600080fd5b50565b600060208284031215611ec457600080fd5b8135611da081611e81565b60005b83811015611eea578181015183820152602001611ed2565b50506000910152565b60008151808452611f0b816020860160208601611ecf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611da06020830184611ef3565b600060208284031215611f6257600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611fdf57611fdf611f69565b604052919050565b600067ffffffffffffffff82111561200157612001611f69565b5060051b60200190565b600082601f83011261201c57600080fd5b8135602061203161202c83611fe7565b611f98565b82815260059290921b8401810191818101908684111561205057600080fd5b8286015b8481101561206b5780358352918301918301612054565b509695505050505050565b600082601f83011261208757600080fd5b813567ffffffffffffffff8111156120a1576120a1611f69565b6120d260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611f98565b8181528460208386010111156120e757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561211c57600080fd5b61212586611e2e565b945061213360208701611e2e565b9350604086013567ffffffffffffffff8082111561215057600080fd5b61215c89838a0161200b565b9450606088013591508082111561217257600080fd5b61217e89838a0161200b565b9350608088013591508082111561219457600080fd5b506121a188828901612076565b9150509295509295909350565b6000806000606084860312156121c357600080fd5b6121cc84611e2e565b95602085013595506040909401359392505050565b600080604083850312156121f457600080fd5b823567ffffffffffffffff8082111561220c57600080fd5b818501915085601f83011261222057600080fd5b8135602061223061202c83611fe7565b82815260059290921b8401810191818101908984111561224f57600080fd5b948201945b838610156122745761226586611e2e565b82529482019490820190612254565b9650508601359250508082111561228a57600080fd5b506122978582860161200b565b9150509250929050565b600081518084526020808501945080840160005b838110156122d1578151875295820195908201906001016122b5565b509495945050505050565b602081526000611da060208301846122a1565b6000806040838503121561230257600080fd5b61230b83611e2e565b91506020830135801515811461232057600080fd5b809150509250929050565b6000806000806080858703121561234157600080fd5b61234a85611e2e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561237457600080fd5b61238087828801612076565b91505092959194509250565b6000806000606084860312156123a157600080fd5b6123aa84611e2e565b9250602084013567ffffffffffffffff808211156123c757600080fd5b6123d38783880161200b565b935060408601359150808211156123e957600080fd5b506123f68682870161200b565b9150509250925092565b6000806000806080858703121561241657600080fd5b61241f85611e2e565b9350602085013567ffffffffffffffff8082111561243c57600080fd5b6124488883890161200b565b9450604087013591508082111561245e57600080fd5b61246a8883890161200b565b9350606087013591508082111561248057600080fd5b5061238087828801612076565b600080604083850312156124a057600080fd5b6124a983611e2e565b91506124b760208401611e2e565b90509250929050565b600080604083850312156124d357600080fd5b50508035926020909101359150565b600080600080600060a086880312156124fa57600080fd5b61250386611e2e565b945061251160208701611e2e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561253b57600080fd5b6121a188828901612076565b600181811c9082168061255b57607f821691505b602082108103612594577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516125ac818560208601611ecf565b9290920192915050565b600080845481600182811c9150808316806125d257607f831692505b6020808410820361260a577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561261e57600181146126515761267e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008616895284151585028901965061267e565b60008b81526020902060005b868110156126765781548b82015290850190830161265d565b505084890196505b5050505050506126ba612691828661259a565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610381576103816126f2565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612765576127656126f2565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826127aa576127aa61276c565b500490565b6000826127be576127be61276c565b500690565b8082028115828204841417610381576103816126f2565b60ff8181168382160190811115610381576103816126f2565b60408152600061280660408301856122a1565b82810360208401526126ba81856122a1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261285160a08301866122a1565b828103606084015261286381866122a1565b905082810360808401526128778185611ef3565b98975050505050505050565b60006020828403121561289557600080fd5b8151611da081611e81565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526128e560a0830184611ef3565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b80820180821115610381576103816126f2565b600181815b8085111561298b57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612971576129716126f2565b8085161561297e57918102915b93841c9390800290612937565b509250929050565b6000826129a257506001610381565b816129af57506000610381565b81600181146129c557600281146129cf576129eb565b6001915050610381565b60ff8411156129e0576129e06126f2565b50506001821b610381565b5060208310610133831016604e8410600b8410161715612a0e575081810a610381565b612a188383612932565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612a4a57612a4a6126f2565b029392505050565b6000611da0838361299356fea2646970667358221220892dcdbd4e694beefeb475e8bd5b4daf66d1daf3b0c853d3fb8ca4002e1bd0ee64736f6c63430008120033"; + static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162002e0738038062002e07833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b612a9480620003736000396000f3fe608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063a22cb46511610097578063db90e83c11610066578063db90e83c14610299578063e985e9c5146102c1578063eaec5f811461030a578063f242432a1461031d576100ff565b8063a22cb4651461024d578063a3f091f514610260578063bd7a6c4114610273578063d7a0ad9014610286576100ff565b80632eb2c2d6116100d35780632eb2c2d6146101fd578063437ecbe9146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611e57565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611eb2565b610387565b60405190151581526020016101a9565b6101dd610392565b6040516101a99190611f3d565b6101dd6101f8366004611f50565b610420565b61021061020b366004612104565b610454565b005b6102106102203660046121ae565b6105f8565b6102386102333660046121e1565b610608565b6040516101a991906122dc565b6101dd610902565b61021061025b3660046122ef565b61090f565b61021061026e36600461232b565b6109a6565b61021061028136600461238c565b6109b8565b610210610294366004612400565b6109c3565b6102ac6102a7366004611f50565b6109cf565b604080519283526020830191909152016101a9565b6101c56102cf36600461248d565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61019f6103183660046124c0565b610a09565b61021061032b3660046124e2565b610a37565b600080600061033e846109cf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061037c9082610a09565b925050505b92915050565b600061038182610bd4565b6003805461039f90612547565b80601f01602080910402602001604051908101604052809291908181526020018280546103cb90612547565b80156104185780601f106103ed57610100808354040283529160200191610418565b820191906000526020600020905b8154815290600101906020018083116103fb57829003601f168201915b505050505081565b6060600261042d83610c30565b60405160200161043e9291906125b6565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806104a8575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f52000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610183565b6105e385858585610d90565b6105f1858585855a866111f3565b5050505050565b6106038383836113a2565b505050565b8151815160609190811461069e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610183565b6000806106c4856000815181106106b7576106b76126c3565b60200260200101516109cf565b915091506000806000886000815181106106e0576106e06126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561075657610756611f69565b60405190808252806020026020018201604052801561077f578160200160208202803683370190505b50905061078c8385610a09565b8160008151811061079f5761079f6126c3565b602090810291909101015260015b868110156108f5576107ca8982815181106106b7576106b76126c3565b9096509450828614158061084857508981815181106107eb576107eb6126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a6001836108179190612721565b81518110610827576108276126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156108bc576000808b8381518110610862576108626126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6108c68486610a09565b8282815181106108d8576108d86126c3565b6020908102919091010152806108ed81612734565b9150506107ad565b5098975050505050505050565b6002805461039f90612547565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6109b28484848461140a565b50505050565b61060383838361147c565b6109b2848484846115f0565b6000806109df602061010061279b565b6109e9908461279b565b91506109f8602061010061279b565b610a0290846127af565b9050915091565b600080610a1c6001640100000000612721565b90506000610a2b8460206127c3565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610a8b575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610bba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610183565b610bc685858585611851565b6105f1858585855a866118c0565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610c2757506001919050565b61038182611a65565b606081600003610c7357505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610c9d5780610c8781612734565b9150610c969050600a8361279b565b9150610c77565b60008167ffffffffffffffff811115610cb857610cb8611f69565b6040519080825280601f01601f191660200182016040528015610ce2576020820181803683370190505b509050815b8515610d8757610cf8600182612721565b90506000610d07600a8861279b565b610d1290600a6127c3565b610d1c9088612721565b610d279060306127da565b905060008160f81b905080848481518110610d4457610d446126c3565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610d7e600a8961279b565b97505050610ce7565b50949350505050565b815181518114610e48576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610183565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610e845750600081115b1561108457600080610ea2856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610f009190849088908590610ef157610ef16126c3565b60200260200101516001611b02565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610f5c9190859089908590610f4d57610f4d6126c3565b60200260200101516000611b02565b90508360015b8681101561103257610f7f8982815181106106b7576106b76126c3565b9096509450818614610fee5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b61100584868a8481518110610ef157610ef16126c3565b935061101e83868a8481518110610f4d57610f4d6126c3565b92508061102a81612734565b915050610f62565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a1681528082528381209581529490529220919091555061116e565b60005b8181101561116c578281815181106110a1576110a16126c3565b60200260200101516110cc878684815181106110bf576110bf6126c3565b6020026020010151610330565b101561115a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610183565b8061116481612734565b915050611087565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111e49291906127f3565b60405180910390a45050505050565b6112128573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161125b959493929190612818565b60206040518083038160008887f115801561127a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061129f9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610183565b505b505050505050565b6113af8383836001611da7565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6114178484846000611da7565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46109b260008585855a866118c0565b81518151811461150e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e4754480000006064820152608401610183565b60005b8181101561156a576115588585838151811061152f5761152f6126c3565b6020026020010151858481518110611549576115496126c3565b60200260200101516001611da7565b8061156281612734565b915050611511565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516115e29291906127f3565b60405180910390a450505050565b8151835114611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e47544800006064820152608401610183565b8251156117c3576000806116a1856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091528120548751939550919350916116f09190849088908590610f4d57610f4d6126c3565b86519091508360015b8281101561178a576117168982815181106106b7576106b76126c3565b909650945081861461175f5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b61177684868a8481518110610f4d57610f4d6126c3565b93508061178281612734565b9150506116f9565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161183a9291906127f3565b60405180910390a46109b260008585855a866111f3565b61185e8483836001611da7565b61186b8383836000611da7565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016115e2565b6118df8573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016119289594939291906128a0565b60206040518083038160008887f1158015611947573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061196c9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611ab857506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610381565b600080611b108560206127c3565b90506000611b246001640100000000612721565b90506000846001811115611b3a57611b3a6128f0565b03611bf957611b4b85831b8861291f565b9250611b5960206002612a52565b611b678689851c841661291f565b10611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610183565b611d63565b6001846001811115611c0d57611c0d6128f0565b03611cb557611c1e85831b88612721565b925084818389901c161015611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610183565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610183565b5050949350505050565b6000813f8015801590611da057507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b600080611db3856109cf565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150611df390828686611b02565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611e5257600080fd5b919050565b60008060408385031215611e6a57600080fd5b611e7383611e2e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611eaf57600080fd5b50565b600060208284031215611ec457600080fd5b8135611da081611e81565b60005b83811015611eea578181015183820152602001611ed2565b50506000910152565b60008151808452611f0b816020860160208601611ecf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611da06020830184611ef3565b600060208284031215611f6257600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611fdf57611fdf611f69565b604052919050565b600067ffffffffffffffff82111561200157612001611f69565b5060051b60200190565b600082601f83011261201c57600080fd5b8135602061203161202c83611fe7565b611f98565b82815260059290921b8401810191818101908684111561205057600080fd5b8286015b8481101561206b5780358352918301918301612054565b509695505050505050565b600082601f83011261208757600080fd5b813567ffffffffffffffff8111156120a1576120a1611f69565b6120d260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611f98565b8181528460208386010111156120e757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561211c57600080fd5b61212586611e2e565b945061213360208701611e2e565b9350604086013567ffffffffffffffff8082111561215057600080fd5b61215c89838a0161200b565b9450606088013591508082111561217257600080fd5b61217e89838a0161200b565b9350608088013591508082111561219457600080fd5b506121a188828901612076565b9150509295509295909350565b6000806000606084860312156121c357600080fd5b6121cc84611e2e565b95602085013595506040909401359392505050565b600080604083850312156121f457600080fd5b823567ffffffffffffffff8082111561220c57600080fd5b818501915085601f83011261222057600080fd5b8135602061223061202c83611fe7565b82815260059290921b8401810191818101908984111561224f57600080fd5b948201945b838610156122745761226586611e2e565b82529482019490820190612254565b9650508601359250508082111561228a57600080fd5b506122978582860161200b565b9150509250929050565b600081518084526020808501945080840160005b838110156122d1578151875295820195908201906001016122b5565b509495945050505050565b602081526000611da060208301846122a1565b6000806040838503121561230257600080fd5b61230b83611e2e565b91506020830135801515811461232057600080fd5b809150509250929050565b6000806000806080858703121561234157600080fd5b61234a85611e2e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561237457600080fd5b61238087828801612076565b91505092959194509250565b6000806000606084860312156123a157600080fd5b6123aa84611e2e565b9250602084013567ffffffffffffffff808211156123c757600080fd5b6123d38783880161200b565b935060408601359150808211156123e957600080fd5b506123f68682870161200b565b9150509250925092565b6000806000806080858703121561241657600080fd5b61241f85611e2e565b9350602085013567ffffffffffffffff8082111561243c57600080fd5b6124488883890161200b565b9450604087013591508082111561245e57600080fd5b61246a8883890161200b565b9350606087013591508082111561248057600080fd5b5061238087828801612076565b600080604083850312156124a057600080fd5b6124a983611e2e565b91506124b760208401611e2e565b90509250929050565b600080604083850312156124d357600080fd5b50508035926020909101359150565b600080600080600060a086880312156124fa57600080fd5b61250386611e2e565b945061251160208701611e2e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561253b57600080fd5b6121a188828901612076565b600181811c9082168061255b57607f821691505b602082108103612594577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516125ac818560208601611ecf565b9290920192915050565b600080845481600182811c9150808316806125d257607f831692505b6020808410820361260a577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561261e57600181146126515761267e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008616895284151585028901965061267e565b60008b81526020902060005b868110156126765781548b82015290850190830161265d565b505084890196505b5050505050506126ba612691828661259a565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610381576103816126f2565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612765576127656126f2565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826127aa576127aa61276c565b500490565b6000826127be576127be61276c565b500690565b8082028115828204841417610381576103816126f2565b60ff8181168382160190811115610381576103816126f2565b60408152600061280660408301856122a1565b82810360208401526126ba81856122a1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261285160a08301866122a1565b828103606084015261286381866122a1565b905082810360808401526128778185611ef3565b98975050505050505050565b60006020828403121561289557600080fd5b8151611da081611e81565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526128e560a0830184611ef3565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b80820180821115610381576103816126f2565b600181815b8085111561298b57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612971576129716126f2565b8085161561297e57918102915b93841c9390800290612937565b509250929050565b6000826129a257506001610381565b816129af57506000610381565b81600181146129c557600281146129cf576129eb565b6001915050610381565b60ff8411156129e0576129e06126f2565b50506001821b610381565b5060208310610133831016604e8410600b8410161715612a0e575081810a610381565b612a188383612932565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612a4a57612a4a6126f2565b029392505050565b6000611da0838361299356fea2646970667358221220ae55465b05a3ae46942cf28f993cfffb17bbdcf273cc5094adf299e83c63761e64736f6c63430008120033"; static readonly abi: ({ inputs: { internalType: string; diff --git a/src/adapter/factories/mocks/ERC1155MintBurnPackedBalanceMock__factory.js b/src/adapter/factories/mocks/ERC1155MintBurnPackedBalanceMock__factory.js index 282b817..c1ce0b9 100644 --- a/src/adapter/factories/mocks/ERC1155MintBurnPackedBalanceMock__factory.js +++ b/src/adapter/factories/mocks/ERC1155MintBurnPackedBalanceMock__factory.js @@ -512,7 +512,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x60806040523480156200001157600080fd5b5060405162002e0738038062002e07833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b612a9480620003736000396000f3fe608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063a22cb46511610097578063db90e83c11610066578063db90e83c14610299578063e985e9c5146102c1578063eaec5f811461030a578063f242432a1461031d576100ff565b8063a22cb4651461024d578063a3f091f514610260578063bd7a6c4114610273578063d7a0ad9014610286576100ff565b80632eb2c2d6116100d35780632eb2c2d6146101fd578063437ecbe9146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611e57565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611eb2565b610387565b60405190151581526020016101a9565b6101dd610392565b6040516101a99190611f3d565b6101dd6101f8366004611f50565b610420565b61021061020b366004612104565b610454565b005b6102106102203660046121ae565b6105f8565b6102386102333660046121e1565b610608565b6040516101a991906122dc565b6101dd610902565b61021061025b3660046122ef565b61090f565b61021061026e36600461232b565b6109a6565b61021061028136600461238c565b6109b8565b610210610294366004612400565b6109c3565b6102ac6102a7366004611f50565b6109cf565b604080519283526020830191909152016101a9565b6101c56102cf36600461248d565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61019f6103183660046124c0565b610a09565b61021061032b3660046124e2565b610a37565b600080600061033e846109cf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061037c9082610a09565b925050505b92915050565b600061038182610bd4565b6003805461039f90612547565b80601f01602080910402602001604051908101604052809291908181526020018280546103cb90612547565b80156104185780601f106103ed57610100808354040283529160200191610418565b820191906000526020600020905b8154815290600101906020018083116103fb57829003601f168201915b505050505081565b6060600261042d83610c30565b60405160200161043e9291906125b6565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806104a8575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f52000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610183565b6105e385858585610d90565b6105f1858585855a866111f3565b5050505050565b6106038383836113a2565b505050565b8151815160609190811461069e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610183565b6000806106c4856000815181106106b7576106b76126c3565b60200260200101516109cf565b915091506000806000886000815181106106e0576106e06126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561075657610756611f69565b60405190808252806020026020018201604052801561077f578160200160208202803683370190505b50905061078c8385610a09565b8160008151811061079f5761079f6126c3565b602090810291909101015260015b868110156108f5576107ca8982815181106106b7576106b76126c3565b9096509450828614158061084857508981815181106107eb576107eb6126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a6001836108179190612721565b81518110610827576108276126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156108bc576000808b8381518110610862576108626126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6108c68486610a09565b8282815181106108d8576108d86126c3565b6020908102919091010152806108ed81612734565b9150506107ad565b5098975050505050505050565b6002805461039f90612547565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6109b28484848461140a565b50505050565b61060383838361147c565b6109b2848484846115f0565b6000806109df602061010061279b565b6109e9908461279b565b91506109f8602061010061279b565b610a0290846127af565b9050915091565b600080610a1c6001640100000000612721565b90506000610a2b8460206127c3565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610a8b575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610bba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610183565b610bc685858585611851565b6105f1858585855a866118c0565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610c2757506001919050565b61038182611a65565b606081600003610c7357505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610c9d5780610c8781612734565b9150610c969050600a8361279b565b9150610c77565b60008167ffffffffffffffff811115610cb857610cb8611f69565b6040519080825280601f01601f191660200182016040528015610ce2576020820181803683370190505b509050815b8515610d8757610cf8600182612721565b90506000610d07600a8861279b565b610d1290600a6127c3565b610d1c9088612721565b610d279060306127da565b905060008160f81b905080848481518110610d4457610d446126c3565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610d7e600a8961279b565b97505050610ce7565b50949350505050565b815181518114610e48576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610183565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610e845750600081115b1561108457600080610ea2856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610f009190849088908590610ef157610ef16126c3565b60200260200101516001611b02565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610f5c9190859089908590610f4d57610f4d6126c3565b60200260200101516000611b02565b90508360015b8681101561103257610f7f8982815181106106b7576106b76126c3565b9096509450818614610fee5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b61100584868a8481518110610ef157610ef16126c3565b935061101e83868a8481518110610f4d57610f4d6126c3565b92508061102a81612734565b915050610f62565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a1681528082528381209581529490529220919091555061116e565b60005b8181101561116c578281815181106110a1576110a16126c3565b60200260200101516110cc878684815181106110bf576110bf6126c3565b6020026020010151610330565b101561115a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610183565b8061116481612734565b915050611087565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111e49291906127f3565b60405180910390a45050505050565b6112128573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161125b959493929190612818565b60206040518083038160008887f115801561127a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061129f9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610183565b505b505050505050565b6113af8383836001611da7565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6114178484846000611da7565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46109b260008585855a866118c0565b81518151811461150e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e4754480000006064820152608401610183565b60005b8181101561156a576115588585838151811061152f5761152f6126c3565b6020026020010151858481518110611549576115496126c3565b60200260200101516001611da7565b8061156281612734565b915050611511565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516115e29291906127f3565b60405180910390a450505050565b8151835114611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e47544800006064820152608401610183565b8251156117c3576000806116a1856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091528120548751939550919350916116f09190849088908590610f4d57610f4d6126c3565b86519091508360015b8281101561178a576117168982815181106106b7576106b76126c3565b909650945081861461175f5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b61177684868a8481518110610f4d57610f4d6126c3565b93508061178281612734565b9150506116f9565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161183a9291906127f3565b60405180910390a46109b260008585855a866111f3565b61185e8483836001611da7565b61186b8383836000611da7565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016115e2565b6118df8573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016119289594939291906128a0565b60206040518083038160008887f1158015611947573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061196c9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611ab857506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610381565b600080611b108560206127c3565b90506000611b246001640100000000612721565b90506000846001811115611b3a57611b3a6128f0565b03611bf957611b4b85831b8861291f565b9250611b5960206002612a52565b611b678689851c841661291f565b10611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610183565b611d63565b6001846001811115611c0d57611c0d6128f0565b03611cb557611c1e85831b88612721565b925084818389901c161015611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610183565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610183565b5050949350505050565b6000813f8015801590611da057507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b600080611db3856109cf565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150611df390828686611b02565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611e5257600080fd5b919050565b60008060408385031215611e6a57600080fd5b611e7383611e2e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611eaf57600080fd5b50565b600060208284031215611ec457600080fd5b8135611da081611e81565b60005b83811015611eea578181015183820152602001611ed2565b50506000910152565b60008151808452611f0b816020860160208601611ecf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611da06020830184611ef3565b600060208284031215611f6257600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611fdf57611fdf611f69565b604052919050565b600067ffffffffffffffff82111561200157612001611f69565b5060051b60200190565b600082601f83011261201c57600080fd5b8135602061203161202c83611fe7565b611f98565b82815260059290921b8401810191818101908684111561205057600080fd5b8286015b8481101561206b5780358352918301918301612054565b509695505050505050565b600082601f83011261208757600080fd5b813567ffffffffffffffff8111156120a1576120a1611f69565b6120d260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611f98565b8181528460208386010111156120e757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561211c57600080fd5b61212586611e2e565b945061213360208701611e2e565b9350604086013567ffffffffffffffff8082111561215057600080fd5b61215c89838a0161200b565b9450606088013591508082111561217257600080fd5b61217e89838a0161200b565b9350608088013591508082111561219457600080fd5b506121a188828901612076565b9150509295509295909350565b6000806000606084860312156121c357600080fd5b6121cc84611e2e565b95602085013595506040909401359392505050565b600080604083850312156121f457600080fd5b823567ffffffffffffffff8082111561220c57600080fd5b818501915085601f83011261222057600080fd5b8135602061223061202c83611fe7565b82815260059290921b8401810191818101908984111561224f57600080fd5b948201945b838610156122745761226586611e2e565b82529482019490820190612254565b9650508601359250508082111561228a57600080fd5b506122978582860161200b565b9150509250929050565b600081518084526020808501945080840160005b838110156122d1578151875295820195908201906001016122b5565b509495945050505050565b602081526000611da060208301846122a1565b6000806040838503121561230257600080fd5b61230b83611e2e565b91506020830135801515811461232057600080fd5b809150509250929050565b6000806000806080858703121561234157600080fd5b61234a85611e2e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561237457600080fd5b61238087828801612076565b91505092959194509250565b6000806000606084860312156123a157600080fd5b6123aa84611e2e565b9250602084013567ffffffffffffffff808211156123c757600080fd5b6123d38783880161200b565b935060408601359150808211156123e957600080fd5b506123f68682870161200b565b9150509250925092565b6000806000806080858703121561241657600080fd5b61241f85611e2e565b9350602085013567ffffffffffffffff8082111561243c57600080fd5b6124488883890161200b565b9450604087013591508082111561245e57600080fd5b61246a8883890161200b565b9350606087013591508082111561248057600080fd5b5061238087828801612076565b600080604083850312156124a057600080fd5b6124a983611e2e565b91506124b760208401611e2e565b90509250929050565b600080604083850312156124d357600080fd5b50508035926020909101359150565b600080600080600060a086880312156124fa57600080fd5b61250386611e2e565b945061251160208701611e2e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561253b57600080fd5b6121a188828901612076565b600181811c9082168061255b57607f821691505b602082108103612594577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516125ac818560208601611ecf565b9290920192915050565b600080845481600182811c9150808316806125d257607f831692505b6020808410820361260a577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561261e57600181146126515761267e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008616895284151585028901965061267e565b60008b81526020902060005b868110156126765781548b82015290850190830161265d565b505084890196505b5050505050506126ba612691828661259a565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610381576103816126f2565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612765576127656126f2565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826127aa576127aa61276c565b500490565b6000826127be576127be61276c565b500690565b8082028115828204841417610381576103816126f2565b60ff8181168382160190811115610381576103816126f2565b60408152600061280660408301856122a1565b82810360208401526126ba81856122a1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261285160a08301866122a1565b828103606084015261286381866122a1565b905082810360808401526128778185611ef3565b98975050505050505050565b60006020828403121561289557600080fd5b8151611da081611e81565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526128e560a0830184611ef3565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b80820180821115610381576103816126f2565b600181815b8085111561298b57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612971576129716126f2565b8085161561297e57918102915b93841c9390800290612937565b509250929050565b6000826129a257506001610381565b816129af57506000610381565b81600181146129c557600281146129cf576129eb565b6001915050610381565b60ff8411156129e0576129e06126f2565b50506001821b610381565b5060208310610133831016604e8410600b8410161715612a0e575081810a610381565b612a188383612932565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612a4a57612a4a6126f2565b029392505050565b6000611da0838361299356fea2646970667358221220892dcdbd4e694beefeb475e8bd5b4daf66d1daf3b0c853d3fb8ca4002e1bd0ee64736f6c63430008120033"; +const _bytecode = "0x60806040523480156200001157600080fd5b5060405162002e0738038062002e07833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b612a9480620003736000396000f3fe608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063a22cb46511610097578063db90e83c11610066578063db90e83c14610299578063e985e9c5146102c1578063eaec5f811461030a578063f242432a1461031d576100ff565b8063a22cb4651461024d578063a3f091f514610260578063bd7a6c4114610273578063d7a0ad9014610286576100ff565b80632eb2c2d6116100d35780632eb2c2d6146101fd578063437ecbe9146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611e57565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611eb2565b610387565b60405190151581526020016101a9565b6101dd610392565b6040516101a99190611f3d565b6101dd6101f8366004611f50565b610420565b61021061020b366004612104565b610454565b005b6102106102203660046121ae565b6105f8565b6102386102333660046121e1565b610608565b6040516101a991906122dc565b6101dd610902565b61021061025b3660046122ef565b61090f565b61021061026e36600461232b565b6109a6565b61021061028136600461238c565b6109b8565b610210610294366004612400565b6109c3565b6102ac6102a7366004611f50565b6109cf565b604080519283526020830191909152016101a9565b6101c56102cf36600461248d565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61019f6103183660046124c0565b610a09565b61021061032b3660046124e2565b610a37565b600080600061033e846109cf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061037c9082610a09565b925050505b92915050565b600061038182610bd4565b6003805461039f90612547565b80601f01602080910402602001604051908101604052809291908181526020018280546103cb90612547565b80156104185780601f106103ed57610100808354040283529160200191610418565b820191906000526020600020905b8154815290600101906020018083116103fb57829003601f168201915b505050505081565b6060600261042d83610c30565b60405160200161043e9291906125b6565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806104a8575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f52000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610183565b6105e385858585610d90565b6105f1858585855a866111f3565b5050505050565b6106038383836113a2565b505050565b8151815160609190811461069e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610183565b6000806106c4856000815181106106b7576106b76126c3565b60200260200101516109cf565b915091506000806000886000815181106106e0576106e06126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561075657610756611f69565b60405190808252806020026020018201604052801561077f578160200160208202803683370190505b50905061078c8385610a09565b8160008151811061079f5761079f6126c3565b602090810291909101015260015b868110156108f5576107ca8982815181106106b7576106b76126c3565b9096509450828614158061084857508981815181106107eb576107eb6126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a6001836108179190612721565b81518110610827576108276126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156108bc576000808b8381518110610862576108626126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6108c68486610a09565b8282815181106108d8576108d86126c3565b6020908102919091010152806108ed81612734565b9150506107ad565b5098975050505050505050565b6002805461039f90612547565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6109b28484848461140a565b50505050565b61060383838361147c565b6109b2848484846115f0565b6000806109df602061010061279b565b6109e9908461279b565b91506109f8602061010061279b565b610a0290846127af565b9050915091565b600080610a1c6001640100000000612721565b90506000610a2b8460206127c3565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610a8b575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610bba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610183565b610bc685858585611851565b6105f1858585855a866118c0565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610c2757506001919050565b61038182611a65565b606081600003610c7357505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610c9d5780610c8781612734565b9150610c969050600a8361279b565b9150610c77565b60008167ffffffffffffffff811115610cb857610cb8611f69565b6040519080825280601f01601f191660200182016040528015610ce2576020820181803683370190505b509050815b8515610d8757610cf8600182612721565b90506000610d07600a8861279b565b610d1290600a6127c3565b610d1c9088612721565b610d279060306127da565b905060008160f81b905080848481518110610d4457610d446126c3565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610d7e600a8961279b565b97505050610ce7565b50949350505050565b815181518114610e48576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610183565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610e845750600081115b1561108457600080610ea2856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610f009190849088908590610ef157610ef16126c3565b60200260200101516001611b02565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610f5c9190859089908590610f4d57610f4d6126c3565b60200260200101516000611b02565b90508360015b8681101561103257610f7f8982815181106106b7576106b76126c3565b9096509450818614610fee5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b61100584868a8481518110610ef157610ef16126c3565b935061101e83868a8481518110610f4d57610f4d6126c3565b92508061102a81612734565b915050610f62565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a1681528082528381209581529490529220919091555061116e565b60005b8181101561116c578281815181106110a1576110a16126c3565b60200260200101516110cc878684815181106110bf576110bf6126c3565b6020026020010151610330565b101561115a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610183565b8061116481612734565b915050611087565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111e49291906127f3565b60405180910390a45050505050565b6112128573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161125b959493929190612818565b60206040518083038160008887f115801561127a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061129f9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610183565b505b505050505050565b6113af8383836001611da7565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6114178484846000611da7565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46109b260008585855a866118c0565b81518151811461150e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e4754480000006064820152608401610183565b60005b8181101561156a576115588585838151811061152f5761152f6126c3565b6020026020010151858481518110611549576115496126c3565b60200260200101516001611da7565b8061156281612734565b915050611511565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516115e29291906127f3565b60405180910390a450505050565b8151835114611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e47544800006064820152608401610183565b8251156117c3576000806116a1856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091528120548751939550919350916116f09190849088908590610f4d57610f4d6126c3565b86519091508360015b8281101561178a576117168982815181106106b7576106b76126c3565b909650945081861461175f5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b61177684868a8481518110610f4d57610f4d6126c3565b93508061178281612734565b9150506116f9565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161183a9291906127f3565b60405180910390a46109b260008585855a866111f3565b61185e8483836001611da7565b61186b8383836000611da7565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016115e2565b6118df8573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016119289594939291906128a0565b60206040518083038160008887f1158015611947573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061196c9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611ab857506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610381565b600080611b108560206127c3565b90506000611b246001640100000000612721565b90506000846001811115611b3a57611b3a6128f0565b03611bf957611b4b85831b8861291f565b9250611b5960206002612a52565b611b678689851c841661291f565b10611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610183565b611d63565b6001846001811115611c0d57611c0d6128f0565b03611cb557611c1e85831b88612721565b925084818389901c161015611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610183565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610183565b5050949350505050565b6000813f8015801590611da057507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b600080611db3856109cf565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150611df390828686611b02565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611e5257600080fd5b919050565b60008060408385031215611e6a57600080fd5b611e7383611e2e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611eaf57600080fd5b50565b600060208284031215611ec457600080fd5b8135611da081611e81565b60005b83811015611eea578181015183820152602001611ed2565b50506000910152565b60008151808452611f0b816020860160208601611ecf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611da06020830184611ef3565b600060208284031215611f6257600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611fdf57611fdf611f69565b604052919050565b600067ffffffffffffffff82111561200157612001611f69565b5060051b60200190565b600082601f83011261201c57600080fd5b8135602061203161202c83611fe7565b611f98565b82815260059290921b8401810191818101908684111561205057600080fd5b8286015b8481101561206b5780358352918301918301612054565b509695505050505050565b600082601f83011261208757600080fd5b813567ffffffffffffffff8111156120a1576120a1611f69565b6120d260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611f98565b8181528460208386010111156120e757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561211c57600080fd5b61212586611e2e565b945061213360208701611e2e565b9350604086013567ffffffffffffffff8082111561215057600080fd5b61215c89838a0161200b565b9450606088013591508082111561217257600080fd5b61217e89838a0161200b565b9350608088013591508082111561219457600080fd5b506121a188828901612076565b9150509295509295909350565b6000806000606084860312156121c357600080fd5b6121cc84611e2e565b95602085013595506040909401359392505050565b600080604083850312156121f457600080fd5b823567ffffffffffffffff8082111561220c57600080fd5b818501915085601f83011261222057600080fd5b8135602061223061202c83611fe7565b82815260059290921b8401810191818101908984111561224f57600080fd5b948201945b838610156122745761226586611e2e565b82529482019490820190612254565b9650508601359250508082111561228a57600080fd5b506122978582860161200b565b9150509250929050565b600081518084526020808501945080840160005b838110156122d1578151875295820195908201906001016122b5565b509495945050505050565b602081526000611da060208301846122a1565b6000806040838503121561230257600080fd5b61230b83611e2e565b91506020830135801515811461232057600080fd5b809150509250929050565b6000806000806080858703121561234157600080fd5b61234a85611e2e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561237457600080fd5b61238087828801612076565b91505092959194509250565b6000806000606084860312156123a157600080fd5b6123aa84611e2e565b9250602084013567ffffffffffffffff808211156123c757600080fd5b6123d38783880161200b565b935060408601359150808211156123e957600080fd5b506123f68682870161200b565b9150509250925092565b6000806000806080858703121561241657600080fd5b61241f85611e2e565b9350602085013567ffffffffffffffff8082111561243c57600080fd5b6124488883890161200b565b9450604087013591508082111561245e57600080fd5b61246a8883890161200b565b9350606087013591508082111561248057600080fd5b5061238087828801612076565b600080604083850312156124a057600080fd5b6124a983611e2e565b91506124b760208401611e2e565b90509250929050565b600080604083850312156124d357600080fd5b50508035926020909101359150565b600080600080600060a086880312156124fa57600080fd5b61250386611e2e565b945061251160208701611e2e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561253b57600080fd5b6121a188828901612076565b600181811c9082168061255b57607f821691505b602082108103612594577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516125ac818560208601611ecf565b9290920192915050565b600080845481600182811c9150808316806125d257607f831692505b6020808410820361260a577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561261e57600181146126515761267e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008616895284151585028901965061267e565b60008b81526020902060005b868110156126765781548b82015290850190830161265d565b505084890196505b5050505050506126ba612691828661259a565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610381576103816126f2565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612765576127656126f2565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826127aa576127aa61276c565b500490565b6000826127be576127be61276c565b500690565b8082028115828204841417610381576103816126f2565b60ff8181168382160190811115610381576103816126f2565b60408152600061280660408301856122a1565b82810360208401526126ba81856122a1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261285160a08301866122a1565b828103606084015261286381866122a1565b905082810360808401526128778185611ef3565b98975050505050505050565b60006020828403121561289557600080fd5b8151611da081611e81565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526128e560a0830184611ef3565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b80820180821115610381576103816126f2565b600181815b8085111561298b57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612971576129716126f2565b8085161561297e57918102915b93841c9390800290612937565b509250929050565b6000826129a257506001610381565b816129af57506000610381565b81600181146129c557600281146129cf576129eb565b6001915050610381565b60ff8411156129e0576129e06126f2565b50506001821b610381565b5060208310610133831016604e8410600b8410161715612a0e575081810a610381565b612a188383612932565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612a4a57612a4a6126f2565b029392505050565b6000611da0838361299356fea2646970667358221220ae55465b05a3ae46942cf28f993cfffb17bbdcf273cc5094adf299e83c63761e64736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155MintBurnPackedBalanceMock__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/ERC1155OperatorMock__factory.d.ts b/src/adapter/factories/mocks/ERC1155OperatorMock__factory.d.ts index 38d7f79..30a5d5e 100644 --- a/src/adapter/factories/mocks/ERC1155OperatorMock__factory.d.ts +++ b/src/adapter/factories/mocks/ERC1155OperatorMock__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155OperatorMock__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC1155OperatorMock; connect(signer: Signer): ERC1155OperatorMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610a4e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063e7e4f05211610050578063e7e4f05214610094578063eb46c45b146100a7578063f06978b7146100ba57600080fd5b80637ee7f69b1461006c57806387fd22fc14610081575b600080fd5b61007f61007a3660046104bd565b6100cd565b005b61007f61008f366004610586565b610161565b61007f6100a2366004610619565b6101f8565b61007f6100b53660046106d5565b610254565b61007f6100c8366004610749565b6102ae565b6040517f2eb2c2d600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871690632eb2c2d690610127908890889088908890889060040161085e565b600060405180830381600087803b15801561014157600080fd5b505af1158015610155573d6000803e3d6000fd5b50505050505050505050565b6040517fce0b514b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063ce0b514b906101bd908990899089908990899089906004016108c9565b600060405180830381600087803b1580156101d757600080fd5b505af11580156101eb573d6000803e3d6000fd5b5050505050505050505050565b6040517fa3d4926e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063a3d4926e906101bd90899089908990899089908990600401610916565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f242432a90610127908890889088908890889060040161098a565b6040517ff5d4c82000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f5d4c8209061012790889088908890889088906004016109cf565b803573ffffffffffffffffffffffffffffffffffffffff8116811461032c57600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156103a7576103a7610331565b604052919050565b600082601f8301126103c057600080fd5b8135602067ffffffffffffffff8211156103dc576103dc610331565b8160051b6103eb828201610360565b928352848101820192828101908785111561040557600080fd5b83870192505b848310156104245782358252918301919083019061040b565b979650505050505050565b600082601f83011261044057600080fd5b813567ffffffffffffffff81111561045a5761045a610331565b61048b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610360565b8181528460208386010111156104a057600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c087890312156104d657600080fd5b6104df87610308565b95506104ed60208801610308565b94506104fb60408801610308565b9350606087013567ffffffffffffffff8082111561051857600080fd5b6105248a838b016103af565b9450608089013591508082111561053a57600080fd5b6105468a838b016103af565b935060a089013591508082111561055c57600080fd5b5061056989828a0161042f565b9150509295509295509295565b8035801515811461032c57600080fd5b600080600080600080600060e0888a0312156105a157600080fd5b6105aa88610308565b96506105b860208901610308565b95506105c660408901610308565b945060608801359350608088013592506105e260a08901610576565b915060c088013567ffffffffffffffff8111156105fe57600080fd5b61060a8a828b0161042f565b91505092959891949750929550565b600080600080600080600060e0888a03121561063457600080fd5b61063d88610308565b965061064b60208901610308565b955061065960408901610308565b9450606088013567ffffffffffffffff8082111561067657600080fd5b6106828b838c016103af565b955060808a013591508082111561069857600080fd5b6106a48b838c016103af565b94506106b260a08b01610576565b935060c08a01359150808211156106c857600080fd5b5061060a8a828b0161042f565b60008060008060008060c087890312156106ee57600080fd5b6106f787610308565b955061070560208801610308565b945061071360408801610308565b9350606087013592506080870135915060a087013567ffffffffffffffff81111561073d57600080fd5b61056989828a0161042f565b60008060008060008060c0878903121561076257600080fd5b61076b87610308565b955061077960208801610308565b945061078760408801610308565b935061079560608801610576565b92506107a360808801610576565b915060a087013567ffffffffffffffff81111561073d57600080fd5b600081518084526020808501945080840160005b838110156107ef578151875295820195908201906001016107d3565b509495945050505050565b6000815180845260005b8181101561082057602081850181015186830182015201610804565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261089760a08301866107bf565b82810360608401526108a981866107bf565b905082810360808401526108bd81856107fa565b98975050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff8089168352808816602084015250856040830152846060830152831515608083015260c060a08301526108bd60c08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff808916835280881660208401525060c0604083015261094f60c08301876107bf565b828103606084015261096181876107bf565b9050841515608084015282810360a084015261097d81856107fa565b9998505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261042460a08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff80881683528087166020840152508415156040830152831515606083015260a0608083015261042460a08301846107fa56fea2646970667358221220bcae46749f04d09bd950ee0d2c027787c732cdc3e88f6c112ea2d4b1d04f5fc564736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610a4e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063e7e4f05211610050578063e7e4f05214610094578063eb46c45b146100a7578063f06978b7146100ba57600080fd5b80637ee7f69b1461006c57806387fd22fc14610081575b600080fd5b61007f61007a3660046104bd565b6100cd565b005b61007f61008f366004610586565b610161565b61007f6100a2366004610619565b6101f8565b61007f6100b53660046106d5565b610254565b61007f6100c8366004610749565b6102ae565b6040517f2eb2c2d600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871690632eb2c2d690610127908890889088908890889060040161085e565b600060405180830381600087803b15801561014157600080fd5b505af1158015610155573d6000803e3d6000fd5b50505050505050505050565b6040517fce0b514b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063ce0b514b906101bd908990899089908990899089906004016108c9565b600060405180830381600087803b1580156101d757600080fd5b505af11580156101eb573d6000803e3d6000fd5b5050505050505050505050565b6040517fa3d4926e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063a3d4926e906101bd90899089908990899089908990600401610916565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f242432a90610127908890889088908890889060040161098a565b6040517ff5d4c82000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f5d4c8209061012790889088908890889088906004016109cf565b803573ffffffffffffffffffffffffffffffffffffffff8116811461032c57600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156103a7576103a7610331565b604052919050565b600082601f8301126103c057600080fd5b8135602067ffffffffffffffff8211156103dc576103dc610331565b8160051b6103eb828201610360565b928352848101820192828101908785111561040557600080fd5b83870192505b848310156104245782358252918301919083019061040b565b979650505050505050565b600082601f83011261044057600080fd5b813567ffffffffffffffff81111561045a5761045a610331565b61048b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610360565b8181528460208386010111156104a057600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c087890312156104d657600080fd5b6104df87610308565b95506104ed60208801610308565b94506104fb60408801610308565b9350606087013567ffffffffffffffff8082111561051857600080fd5b6105248a838b016103af565b9450608089013591508082111561053a57600080fd5b6105468a838b016103af565b935060a089013591508082111561055c57600080fd5b5061056989828a0161042f565b9150509295509295509295565b8035801515811461032c57600080fd5b600080600080600080600060e0888a0312156105a157600080fd5b6105aa88610308565b96506105b860208901610308565b95506105c660408901610308565b945060608801359350608088013592506105e260a08901610576565b915060c088013567ffffffffffffffff8111156105fe57600080fd5b61060a8a828b0161042f565b91505092959891949750929550565b600080600080600080600060e0888a03121561063457600080fd5b61063d88610308565b965061064b60208901610308565b955061065960408901610308565b9450606088013567ffffffffffffffff8082111561067657600080fd5b6106828b838c016103af565b955060808a013591508082111561069857600080fd5b6106a48b838c016103af565b94506106b260a08b01610576565b935060c08a01359150808211156106c857600080fd5b5061060a8a828b0161042f565b60008060008060008060c087890312156106ee57600080fd5b6106f787610308565b955061070560208801610308565b945061071360408801610308565b9350606087013592506080870135915060a087013567ffffffffffffffff81111561073d57600080fd5b61056989828a0161042f565b60008060008060008060c0878903121561076257600080fd5b61076b87610308565b955061077960208801610308565b945061078760408801610308565b935061079560608801610576565b92506107a360808801610576565b915060a087013567ffffffffffffffff81111561073d57600080fd5b600081518084526020808501945080840160005b838110156107ef578151875295820195908201906001016107d3565b509495945050505050565b6000815180845260005b8181101561082057602081850181015186830182015201610804565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261089760a08301866107bf565b82810360608401526108a981866107bf565b905082810360808401526108bd81856107fa565b98975050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff8089168352808816602084015250856040830152846060830152831515608083015260c060a08301526108bd60c08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff808916835280881660208401525060c0604083015261094f60c08301876107bf565b828103606084015261096181876107bf565b9050841515608084015282810360a084015261097d81856107fa565b9998505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261042460a08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff80881683528087166020840152508415156040830152831515606083015260a0608083015261042460a08301846107fa56fea26469706673582212204702637dee61cf198d003822040fc048271e736386f329c9649097df0ec100b464736f6c63430008120033"; static readonly abi: { inputs: { internalType: string; diff --git a/src/adapter/factories/mocks/ERC1155OperatorMock__factory.js b/src/adapter/factories/mocks/ERC1155OperatorMock__factory.js index 8802b8b..03a1af8 100644 --- a/src/adapter/factories/mocks/ERC1155OperatorMock__factory.js +++ b/src/adapter/factories/mocks/ERC1155OperatorMock__factory.js @@ -204,7 +204,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b50610a4e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063e7e4f05211610050578063e7e4f05214610094578063eb46c45b146100a7578063f06978b7146100ba57600080fd5b80637ee7f69b1461006c57806387fd22fc14610081575b600080fd5b61007f61007a3660046104bd565b6100cd565b005b61007f61008f366004610586565b610161565b61007f6100a2366004610619565b6101f8565b61007f6100b53660046106d5565b610254565b61007f6100c8366004610749565b6102ae565b6040517f2eb2c2d600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871690632eb2c2d690610127908890889088908890889060040161085e565b600060405180830381600087803b15801561014157600080fd5b505af1158015610155573d6000803e3d6000fd5b50505050505050505050565b6040517fce0b514b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063ce0b514b906101bd908990899089908990899089906004016108c9565b600060405180830381600087803b1580156101d757600080fd5b505af11580156101eb573d6000803e3d6000fd5b5050505050505050505050565b6040517fa3d4926e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063a3d4926e906101bd90899089908990899089908990600401610916565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f242432a90610127908890889088908890889060040161098a565b6040517ff5d4c82000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f5d4c8209061012790889088908890889088906004016109cf565b803573ffffffffffffffffffffffffffffffffffffffff8116811461032c57600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156103a7576103a7610331565b604052919050565b600082601f8301126103c057600080fd5b8135602067ffffffffffffffff8211156103dc576103dc610331565b8160051b6103eb828201610360565b928352848101820192828101908785111561040557600080fd5b83870192505b848310156104245782358252918301919083019061040b565b979650505050505050565b600082601f83011261044057600080fd5b813567ffffffffffffffff81111561045a5761045a610331565b61048b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610360565b8181528460208386010111156104a057600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c087890312156104d657600080fd5b6104df87610308565b95506104ed60208801610308565b94506104fb60408801610308565b9350606087013567ffffffffffffffff8082111561051857600080fd5b6105248a838b016103af565b9450608089013591508082111561053a57600080fd5b6105468a838b016103af565b935060a089013591508082111561055c57600080fd5b5061056989828a0161042f565b9150509295509295509295565b8035801515811461032c57600080fd5b600080600080600080600060e0888a0312156105a157600080fd5b6105aa88610308565b96506105b860208901610308565b95506105c660408901610308565b945060608801359350608088013592506105e260a08901610576565b915060c088013567ffffffffffffffff8111156105fe57600080fd5b61060a8a828b0161042f565b91505092959891949750929550565b600080600080600080600060e0888a03121561063457600080fd5b61063d88610308565b965061064b60208901610308565b955061065960408901610308565b9450606088013567ffffffffffffffff8082111561067657600080fd5b6106828b838c016103af565b955060808a013591508082111561069857600080fd5b6106a48b838c016103af565b94506106b260a08b01610576565b935060c08a01359150808211156106c857600080fd5b5061060a8a828b0161042f565b60008060008060008060c087890312156106ee57600080fd5b6106f787610308565b955061070560208801610308565b945061071360408801610308565b9350606087013592506080870135915060a087013567ffffffffffffffff81111561073d57600080fd5b61056989828a0161042f565b60008060008060008060c0878903121561076257600080fd5b61076b87610308565b955061077960208801610308565b945061078760408801610308565b935061079560608801610576565b92506107a360808801610576565b915060a087013567ffffffffffffffff81111561073d57600080fd5b600081518084526020808501945080840160005b838110156107ef578151875295820195908201906001016107d3565b509495945050505050565b6000815180845260005b8181101561082057602081850181015186830182015201610804565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261089760a08301866107bf565b82810360608401526108a981866107bf565b905082810360808401526108bd81856107fa565b98975050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff8089168352808816602084015250856040830152846060830152831515608083015260c060a08301526108bd60c08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff808916835280881660208401525060c0604083015261094f60c08301876107bf565b828103606084015261096181876107bf565b9050841515608084015282810360a084015261097d81856107fa565b9998505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261042460a08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff80881683528087166020840152508415156040830152831515606083015260a0608083015261042460a08301846107fa56fea2646970667358221220bcae46749f04d09bd950ee0d2c027787c732cdc3e88f6c112ea2d4b1d04f5fc564736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b50610a4e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063e7e4f05211610050578063e7e4f05214610094578063eb46c45b146100a7578063f06978b7146100ba57600080fd5b80637ee7f69b1461006c57806387fd22fc14610081575b600080fd5b61007f61007a3660046104bd565b6100cd565b005b61007f61008f366004610586565b610161565b61007f6100a2366004610619565b6101f8565b61007f6100b53660046106d5565b610254565b61007f6100c8366004610749565b6102ae565b6040517f2eb2c2d600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871690632eb2c2d690610127908890889088908890889060040161085e565b600060405180830381600087803b15801561014157600080fd5b505af1158015610155573d6000803e3d6000fd5b50505050505050505050565b6040517fce0b514b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063ce0b514b906101bd908990899089908990899089906004016108c9565b600060405180830381600087803b1580156101d757600080fd5b505af11580156101eb573d6000803e3d6000fd5b5050505050505050505050565b6040517fa3d4926e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063a3d4926e906101bd90899089908990899089908990600401610916565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f242432a90610127908890889088908890889060040161098a565b6040517ff5d4c82000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f5d4c8209061012790889088908890889088906004016109cf565b803573ffffffffffffffffffffffffffffffffffffffff8116811461032c57600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156103a7576103a7610331565b604052919050565b600082601f8301126103c057600080fd5b8135602067ffffffffffffffff8211156103dc576103dc610331565b8160051b6103eb828201610360565b928352848101820192828101908785111561040557600080fd5b83870192505b848310156104245782358252918301919083019061040b565b979650505050505050565b600082601f83011261044057600080fd5b813567ffffffffffffffff81111561045a5761045a610331565b61048b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610360565b8181528460208386010111156104a057600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c087890312156104d657600080fd5b6104df87610308565b95506104ed60208801610308565b94506104fb60408801610308565b9350606087013567ffffffffffffffff8082111561051857600080fd5b6105248a838b016103af565b9450608089013591508082111561053a57600080fd5b6105468a838b016103af565b935060a089013591508082111561055c57600080fd5b5061056989828a0161042f565b9150509295509295509295565b8035801515811461032c57600080fd5b600080600080600080600060e0888a0312156105a157600080fd5b6105aa88610308565b96506105b860208901610308565b95506105c660408901610308565b945060608801359350608088013592506105e260a08901610576565b915060c088013567ffffffffffffffff8111156105fe57600080fd5b61060a8a828b0161042f565b91505092959891949750929550565b600080600080600080600060e0888a03121561063457600080fd5b61063d88610308565b965061064b60208901610308565b955061065960408901610308565b9450606088013567ffffffffffffffff8082111561067657600080fd5b6106828b838c016103af565b955060808a013591508082111561069857600080fd5b6106a48b838c016103af565b94506106b260a08b01610576565b935060c08a01359150808211156106c857600080fd5b5061060a8a828b0161042f565b60008060008060008060c087890312156106ee57600080fd5b6106f787610308565b955061070560208801610308565b945061071360408801610308565b9350606087013592506080870135915060a087013567ffffffffffffffff81111561073d57600080fd5b61056989828a0161042f565b60008060008060008060c0878903121561076257600080fd5b61076b87610308565b955061077960208801610308565b945061078760408801610308565b935061079560608801610576565b92506107a360808801610576565b915060a087013567ffffffffffffffff81111561073d57600080fd5b600081518084526020808501945080840160005b838110156107ef578151875295820195908201906001016107d3565b509495945050505050565b6000815180845260005b8181101561082057602081850181015186830182015201610804565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261089760a08301866107bf565b82810360608401526108a981866107bf565b905082810360808401526108bd81856107fa565b98975050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff8089168352808816602084015250856040830152846060830152831515608083015260c060a08301526108bd60c08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff808916835280881660208401525060c0604083015261094f60c08301876107bf565b828103606084015261096181876107bf565b9050841515608084015282810360a084015261097d81856107fa565b9998505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261042460a08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff80881683528087166020840152508415156040830152831515606083015260a0608083015261042460a08301846107fa56fea26469706673582212204702637dee61cf198d003822040fc048271e736386f329c9649097df0ec100b464736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155OperatorMock__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/ERC1155ReceiverMock__factory.d.ts b/src/adapter/factories/mocks/ERC1155ReceiverMock__factory.d.ts index 72d85bc..2289092 100644 --- a/src/adapter/factories/mocks/ERC1155ReceiverMock__factory.d.ts +++ b/src/adapter/factories/mocks/ERC1155ReceiverMock__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155ReceiverMock__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC1155ReceiverMock; connect(signer: Signer): ERC1155ReceiverMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50611049806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c80636eb3cd4911610076578063bc197c811161005b578063bc197c8114610192578063c1292cc3146101d6578063f23a6e61146101df57600080fd5b80636eb3cd491461010c578063a175b6381461015157600080fd5b80626e75ec146100a757806301ffc9a7146100c55780631dbb9381146100e857806343183834146100f5575b600080fd5b6100af6101f2565b6040516100bc91906109eb565b60405180910390f35b6100d86100d3366004610a57565b610280565b60405190151581526020016100bc565b6000546100d89060ff1681565b6100fe60045481565b6040519081526020016100bc565b60025461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100bc565b61019061015f366004610aa0565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b005b6101a56101a0366004610c86565b610319565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016100bc565b6100fe60035481565b6101a56101ed366004610d30565b61072d565b600180546101ff90610d95565b80601f016020809104026020016040519081016040528092919081815260200182805461022b90610d95565b80156102785780601f1061024d57610100808354040283529160200191610278565b820191906000526020600020905b81548152906001019060200180831161025b57829003601f168201915b505050505081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061031357507f4e2312e0000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600080845167ffffffffffffffff81111561033657610336610aeb565b60405190808252806020026020018201604052801561035f578160200160208202803683370190505b5090506000855167ffffffffffffffff81111561037e5761037e610aeb565b6040519080825280602002602001820160405280156103a7578160200160208202803683370190505b50905060005b865181101561044d57878382815181106103c9576103c9610de8565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503082828151811061041657610416610de8565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061044581610e17565b9150506103ad565b506040517f4e1273f40000000000000000000000000000000000000000000000000000000081526000903390634e1273f49061048f9086908b90600401610eb1565b600060405180830381865afa1580156104ac573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526104f29190810190610f1e565b6040517f4e1273f40000000000000000000000000000000000000000000000000000000081529091506000903390634e1273f4906105369086908c90600401610eb1565b600060405180830381865afa158015610553573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526105999190810190610f1e565b90507f342e0fabcfd1ee833d876ecb1c45c3c2128e88b7cb5ba33cb71476504c75ac96893084846040516105d09493929190610faf565b60405180910390a18551156106bb576040517f48656c6c6f2066726f6d20746865206f746865722073696465000000000000006020820152603901604051602081830303815290604052805190602001208680519060200120146106bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084015b60405180910390fd5b60005460ff1615156001036106f757507fdeadbeef00000000000000000000000000000000000000000000000000000000935061072492505050565b507fbc197c8100000000000000000000000000000000000000000000000000000000935061072492505050565b95945050505050565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602481018490526000908190339062fdd58e90604401602060405180830381865afa1580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190610ffa565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815230600482015260248101879052909150600090339062fdd58e90604401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610ffa565b6040805173ffffffffffffffffffffffffffffffffffffffff8a168152306020820152908101849052606081018290529091507f35754fc132e57c492c060947310a879a2a3bc6d8360c268803988f6366a5ffa29060800160405180910390a1835115610986576040517f48656c6c6f2066726f6d20746865206f74686572207369646500000000000000602082015260390160405160208183030381529060405280519060200120848051906020012014610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084016106b2565b60005460ff1615156001036109c057507fdeadbeef0000000000000000000000000000000000000000000000000000000091506107249050565b507ff23a6e610000000000000000000000000000000000000000000000000000000091506107249050565b600060208083528351808285015260005b81811015610a18578581018301518582016040015282016109fc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600060208284031215610a6957600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610a9957600080fd5b9392505050565b600060208284031215610ab257600080fd5b81358015158114610a9957600080fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610ae657600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610b6157610b61610aeb565b604052919050565b600067ffffffffffffffff821115610b8357610b83610aeb565b5060051b60200190565b600082601f830112610b9e57600080fd5b81356020610bb3610bae83610b69565b610b1a565b82815260059290921b84018101918181019086841115610bd257600080fd5b8286015b84811015610bed5780358352918301918301610bd6565b509695505050505050565b600082601f830112610c0957600080fd5b813567ffffffffffffffff811115610c2357610c23610aeb565b610c5460207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610b1a565b818152846020838601011115610c6957600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610c9e57600080fd5b610ca786610ac2565b9450610cb560208701610ac2565b9350604086013567ffffffffffffffff80821115610cd257600080fd5b610cde89838a01610b8d565b94506060880135915080821115610cf457600080fd5b610d0089838a01610b8d565b93506080880135915080821115610d1657600080fd5b50610d2388828901610bf8565b9150509295509295909350565b600080600080600060a08688031215610d4857600080fd5b610d5186610ac2565b9450610d5f60208701610ac2565b93506040860135925060608601359150608086013567ffffffffffffffff811115610d8957600080fd5b610d2388828901610bf8565b600181811c90821680610da957607f821691505b602082108103610de2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e6f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b600081518084526020808501945080840160005b83811015610ea657815187529582019590820190600101610e8a565b509495945050505050565b604080825283519082018190526000906020906060840190828701845b82811015610f0057815173ffffffffffffffffffffffffffffffffffffffff1684529284019290840190600101610ece565b50505083810382850152610f148186610e76565b9695505050505050565b60006020808385031215610f3157600080fd5b825167ffffffffffffffff811115610f4857600080fd5b8301601f81018513610f5957600080fd5b8051610f67610bae82610b69565b81815260059190911b82018301908381019087831115610f8657600080fd5b928401925b82841015610fa457835182529284019290840190610f8b565b979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525060806040830152610fe86080830185610e76565b8281036060840152610fa48185610e76565b60006020828403121561100c57600080fd5b505191905056fea264697066735822122052e616f77f40428e17fab870862ee8e44cf55cab8bc91a155c593c524929473064736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b50611049806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c80636eb3cd4911610076578063bc197c811161005b578063bc197c8114610192578063c1292cc3146101d6578063f23a6e61146101df57600080fd5b80636eb3cd491461010c578063a175b6381461015157600080fd5b80626e75ec146100a757806301ffc9a7146100c55780631dbb9381146100e857806343183834146100f5575b600080fd5b6100af6101f2565b6040516100bc91906109eb565b60405180910390f35b6100d86100d3366004610a57565b610280565b60405190151581526020016100bc565b6000546100d89060ff1681565b6100fe60045481565b6040519081526020016100bc565b60025461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100bc565b61019061015f366004610aa0565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b005b6101a56101a0366004610c86565b610319565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016100bc565b6100fe60035481565b6101a56101ed366004610d30565b61072d565b600180546101ff90610d95565b80601f016020809104026020016040519081016040528092919081815260200182805461022b90610d95565b80156102785780601f1061024d57610100808354040283529160200191610278565b820191906000526020600020905b81548152906001019060200180831161025b57829003601f168201915b505050505081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061031357507f4e2312e0000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600080845167ffffffffffffffff81111561033657610336610aeb565b60405190808252806020026020018201604052801561035f578160200160208202803683370190505b5090506000855167ffffffffffffffff81111561037e5761037e610aeb565b6040519080825280602002602001820160405280156103a7578160200160208202803683370190505b50905060005b865181101561044d57878382815181106103c9576103c9610de8565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503082828151811061041657610416610de8565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061044581610e17565b9150506103ad565b506040517f4e1273f40000000000000000000000000000000000000000000000000000000081526000903390634e1273f49061048f9086908b90600401610eb1565b600060405180830381865afa1580156104ac573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526104f29190810190610f1e565b6040517f4e1273f40000000000000000000000000000000000000000000000000000000081529091506000903390634e1273f4906105369086908c90600401610eb1565b600060405180830381865afa158015610553573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526105999190810190610f1e565b90507f342e0fabcfd1ee833d876ecb1c45c3c2128e88b7cb5ba33cb71476504c75ac96893084846040516105d09493929190610faf565b60405180910390a18551156106bb576040517f48656c6c6f2066726f6d20746865206f746865722073696465000000000000006020820152603901604051602081830303815290604052805190602001208680519060200120146106bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084015b60405180910390fd5b60005460ff1615156001036106f757507fdeadbeef00000000000000000000000000000000000000000000000000000000935061072492505050565b507fbc197c8100000000000000000000000000000000000000000000000000000000935061072492505050565b95945050505050565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602481018490526000908190339062fdd58e90604401602060405180830381865afa1580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190610ffa565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815230600482015260248101879052909150600090339062fdd58e90604401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610ffa565b6040805173ffffffffffffffffffffffffffffffffffffffff8a168152306020820152908101849052606081018290529091507f35754fc132e57c492c060947310a879a2a3bc6d8360c268803988f6366a5ffa29060800160405180910390a1835115610986576040517f48656c6c6f2066726f6d20746865206f74686572207369646500000000000000602082015260390160405160208183030381529060405280519060200120848051906020012014610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084016106b2565b60005460ff1615156001036109c057507fdeadbeef0000000000000000000000000000000000000000000000000000000091506107249050565b507ff23a6e610000000000000000000000000000000000000000000000000000000091506107249050565b600060208083528351808285015260005b81811015610a18578581018301518582016040015282016109fc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600060208284031215610a6957600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610a9957600080fd5b9392505050565b600060208284031215610ab257600080fd5b81358015158114610a9957600080fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610ae657600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610b6157610b61610aeb565b604052919050565b600067ffffffffffffffff821115610b8357610b83610aeb565b5060051b60200190565b600082601f830112610b9e57600080fd5b81356020610bb3610bae83610b69565b610b1a565b82815260059290921b84018101918181019086841115610bd257600080fd5b8286015b84811015610bed5780358352918301918301610bd6565b509695505050505050565b600082601f830112610c0957600080fd5b813567ffffffffffffffff811115610c2357610c23610aeb565b610c5460207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610b1a565b818152846020838601011115610c6957600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610c9e57600080fd5b610ca786610ac2565b9450610cb560208701610ac2565b9350604086013567ffffffffffffffff80821115610cd257600080fd5b610cde89838a01610b8d565b94506060880135915080821115610cf457600080fd5b610d0089838a01610b8d565b93506080880135915080821115610d1657600080fd5b50610d2388828901610bf8565b9150509295509295909350565b600080600080600060a08688031215610d4857600080fd5b610d5186610ac2565b9450610d5f60208701610ac2565b93506040860135925060608601359150608086013567ffffffffffffffff811115610d8957600080fd5b610d2388828901610bf8565b600181811c90821680610da957607f821691505b602082108103610de2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e6f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b600081518084526020808501945080840160005b83811015610ea657815187529582019590820190600101610e8a565b509495945050505050565b604080825283519082018190526000906020906060840190828701845b82811015610f0057815173ffffffffffffffffffffffffffffffffffffffff1684529284019290840190600101610ece565b50505083810382850152610f148186610e76565b9695505050505050565b60006020808385031215610f3157600080fd5b825167ffffffffffffffff811115610f4857600080fd5b8301601f81018513610f5957600080fd5b8051610f67610bae82610b69565b81815260059190911b82018301908381019087831115610f8657600080fd5b928401925b82841015610fa457835182529284019290840190610f8b565b979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525060806040830152610fe86080830185610e76565b8281036060840152610fa48185610e76565b60006020828403121561100c57600080fd5b505191905056fea2646970667358221220096faf4f1ea2036193054940e5f451d1e24910d8212753c9c321a1a7254fa57264736f6c63430008120033"; static readonly abi: ({ anonymous: boolean; inputs: { diff --git a/src/adapter/factories/mocks/ERC1155ReceiverMock__factory.js b/src/adapter/factories/mocks/ERC1155ReceiverMock__factory.js index 684bfa6..799b384 100644 --- a/src/adapter/factories/mocks/ERC1155ReceiverMock__factory.js +++ b/src/adapter/factories/mocks/ERC1155ReceiverMock__factory.js @@ -241,7 +241,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b50611049806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c80636eb3cd4911610076578063bc197c811161005b578063bc197c8114610192578063c1292cc3146101d6578063f23a6e61146101df57600080fd5b80636eb3cd491461010c578063a175b6381461015157600080fd5b80626e75ec146100a757806301ffc9a7146100c55780631dbb9381146100e857806343183834146100f5575b600080fd5b6100af6101f2565b6040516100bc91906109eb565b60405180910390f35b6100d86100d3366004610a57565b610280565b60405190151581526020016100bc565b6000546100d89060ff1681565b6100fe60045481565b6040519081526020016100bc565b60025461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100bc565b61019061015f366004610aa0565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b005b6101a56101a0366004610c86565b610319565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016100bc565b6100fe60035481565b6101a56101ed366004610d30565b61072d565b600180546101ff90610d95565b80601f016020809104026020016040519081016040528092919081815260200182805461022b90610d95565b80156102785780601f1061024d57610100808354040283529160200191610278565b820191906000526020600020905b81548152906001019060200180831161025b57829003601f168201915b505050505081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061031357507f4e2312e0000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600080845167ffffffffffffffff81111561033657610336610aeb565b60405190808252806020026020018201604052801561035f578160200160208202803683370190505b5090506000855167ffffffffffffffff81111561037e5761037e610aeb565b6040519080825280602002602001820160405280156103a7578160200160208202803683370190505b50905060005b865181101561044d57878382815181106103c9576103c9610de8565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503082828151811061041657610416610de8565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061044581610e17565b9150506103ad565b506040517f4e1273f40000000000000000000000000000000000000000000000000000000081526000903390634e1273f49061048f9086908b90600401610eb1565b600060405180830381865afa1580156104ac573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526104f29190810190610f1e565b6040517f4e1273f40000000000000000000000000000000000000000000000000000000081529091506000903390634e1273f4906105369086908c90600401610eb1565b600060405180830381865afa158015610553573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526105999190810190610f1e565b90507f342e0fabcfd1ee833d876ecb1c45c3c2128e88b7cb5ba33cb71476504c75ac96893084846040516105d09493929190610faf565b60405180910390a18551156106bb576040517f48656c6c6f2066726f6d20746865206f746865722073696465000000000000006020820152603901604051602081830303815290604052805190602001208680519060200120146106bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084015b60405180910390fd5b60005460ff1615156001036106f757507fdeadbeef00000000000000000000000000000000000000000000000000000000935061072492505050565b507fbc197c8100000000000000000000000000000000000000000000000000000000935061072492505050565b95945050505050565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602481018490526000908190339062fdd58e90604401602060405180830381865afa1580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190610ffa565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815230600482015260248101879052909150600090339062fdd58e90604401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610ffa565b6040805173ffffffffffffffffffffffffffffffffffffffff8a168152306020820152908101849052606081018290529091507f35754fc132e57c492c060947310a879a2a3bc6d8360c268803988f6366a5ffa29060800160405180910390a1835115610986576040517f48656c6c6f2066726f6d20746865206f74686572207369646500000000000000602082015260390160405160208183030381529060405280519060200120848051906020012014610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084016106b2565b60005460ff1615156001036109c057507fdeadbeef0000000000000000000000000000000000000000000000000000000091506107249050565b507ff23a6e610000000000000000000000000000000000000000000000000000000091506107249050565b600060208083528351808285015260005b81811015610a18578581018301518582016040015282016109fc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600060208284031215610a6957600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610a9957600080fd5b9392505050565b600060208284031215610ab257600080fd5b81358015158114610a9957600080fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610ae657600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610b6157610b61610aeb565b604052919050565b600067ffffffffffffffff821115610b8357610b83610aeb565b5060051b60200190565b600082601f830112610b9e57600080fd5b81356020610bb3610bae83610b69565b610b1a565b82815260059290921b84018101918181019086841115610bd257600080fd5b8286015b84811015610bed5780358352918301918301610bd6565b509695505050505050565b600082601f830112610c0957600080fd5b813567ffffffffffffffff811115610c2357610c23610aeb565b610c5460207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610b1a565b818152846020838601011115610c6957600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610c9e57600080fd5b610ca786610ac2565b9450610cb560208701610ac2565b9350604086013567ffffffffffffffff80821115610cd257600080fd5b610cde89838a01610b8d565b94506060880135915080821115610cf457600080fd5b610d0089838a01610b8d565b93506080880135915080821115610d1657600080fd5b50610d2388828901610bf8565b9150509295509295909350565b600080600080600060a08688031215610d4857600080fd5b610d5186610ac2565b9450610d5f60208701610ac2565b93506040860135925060608601359150608086013567ffffffffffffffff811115610d8957600080fd5b610d2388828901610bf8565b600181811c90821680610da957607f821691505b602082108103610de2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e6f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b600081518084526020808501945080840160005b83811015610ea657815187529582019590820190600101610e8a565b509495945050505050565b604080825283519082018190526000906020906060840190828701845b82811015610f0057815173ffffffffffffffffffffffffffffffffffffffff1684529284019290840190600101610ece565b50505083810382850152610f148186610e76565b9695505050505050565b60006020808385031215610f3157600080fd5b825167ffffffffffffffff811115610f4857600080fd5b8301601f81018513610f5957600080fd5b8051610f67610bae82610b69565b81815260059190911b82018301908381019087831115610f8657600080fd5b928401925b82841015610fa457835182529284019290840190610f8b565b979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525060806040830152610fe86080830185610e76565b8281036060840152610fa48185610e76565b60006020828403121561100c57600080fd5b505191905056fea264697066735822122052e616f77f40428e17fab870862ee8e44cf55cab8bc91a155c593c524929473064736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b50611049806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c80636eb3cd4911610076578063bc197c811161005b578063bc197c8114610192578063c1292cc3146101d6578063f23a6e61146101df57600080fd5b80636eb3cd491461010c578063a175b6381461015157600080fd5b80626e75ec146100a757806301ffc9a7146100c55780631dbb9381146100e857806343183834146100f5575b600080fd5b6100af6101f2565b6040516100bc91906109eb565b60405180910390f35b6100d86100d3366004610a57565b610280565b60405190151581526020016100bc565b6000546100d89060ff1681565b6100fe60045481565b6040519081526020016100bc565b60025461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100bc565b61019061015f366004610aa0565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b005b6101a56101a0366004610c86565b610319565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016100bc565b6100fe60035481565b6101a56101ed366004610d30565b61072d565b600180546101ff90610d95565b80601f016020809104026020016040519081016040528092919081815260200182805461022b90610d95565b80156102785780601f1061024d57610100808354040283529160200191610278565b820191906000526020600020905b81548152906001019060200180831161025b57829003601f168201915b505050505081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061031357507f4e2312e0000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600080845167ffffffffffffffff81111561033657610336610aeb565b60405190808252806020026020018201604052801561035f578160200160208202803683370190505b5090506000855167ffffffffffffffff81111561037e5761037e610aeb565b6040519080825280602002602001820160405280156103a7578160200160208202803683370190505b50905060005b865181101561044d57878382815181106103c9576103c9610de8565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503082828151811061041657610416610de8565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061044581610e17565b9150506103ad565b506040517f4e1273f40000000000000000000000000000000000000000000000000000000081526000903390634e1273f49061048f9086908b90600401610eb1565b600060405180830381865afa1580156104ac573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526104f29190810190610f1e565b6040517f4e1273f40000000000000000000000000000000000000000000000000000000081529091506000903390634e1273f4906105369086908c90600401610eb1565b600060405180830381865afa158015610553573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526105999190810190610f1e565b90507f342e0fabcfd1ee833d876ecb1c45c3c2128e88b7cb5ba33cb71476504c75ac96893084846040516105d09493929190610faf565b60405180910390a18551156106bb576040517f48656c6c6f2066726f6d20746865206f746865722073696465000000000000006020820152603901604051602081830303815290604052805190602001208680519060200120146106bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084015b60405180910390fd5b60005460ff1615156001036106f757507fdeadbeef00000000000000000000000000000000000000000000000000000000935061072492505050565b507fbc197c8100000000000000000000000000000000000000000000000000000000935061072492505050565b95945050505050565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602481018490526000908190339062fdd58e90604401602060405180830381865afa1580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190610ffa565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815230600482015260248101879052909150600090339062fdd58e90604401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610ffa565b6040805173ffffffffffffffffffffffffffffffffffffffff8a168152306020820152908101849052606081018290529091507f35754fc132e57c492c060947310a879a2a3bc6d8360c268803988f6366a5ffa29060800160405180910390a1835115610986576040517f48656c6c6f2066726f6d20746865206f74686572207369646500000000000000602082015260390160405160208183030381529060405280519060200120848051906020012014610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084016106b2565b60005460ff1615156001036109c057507fdeadbeef0000000000000000000000000000000000000000000000000000000091506107249050565b507ff23a6e610000000000000000000000000000000000000000000000000000000091506107249050565b600060208083528351808285015260005b81811015610a18578581018301518582016040015282016109fc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600060208284031215610a6957600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610a9957600080fd5b9392505050565b600060208284031215610ab257600080fd5b81358015158114610a9957600080fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610ae657600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610b6157610b61610aeb565b604052919050565b600067ffffffffffffffff821115610b8357610b83610aeb565b5060051b60200190565b600082601f830112610b9e57600080fd5b81356020610bb3610bae83610b69565b610b1a565b82815260059290921b84018101918181019086841115610bd257600080fd5b8286015b84811015610bed5780358352918301918301610bd6565b509695505050505050565b600082601f830112610c0957600080fd5b813567ffffffffffffffff811115610c2357610c23610aeb565b610c5460207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610b1a565b818152846020838601011115610c6957600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610c9e57600080fd5b610ca786610ac2565b9450610cb560208701610ac2565b9350604086013567ffffffffffffffff80821115610cd257600080fd5b610cde89838a01610b8d565b94506060880135915080821115610cf457600080fd5b610d0089838a01610b8d565b93506080880135915080821115610d1657600080fd5b50610d2388828901610bf8565b9150509295509295909350565b600080600080600060a08688031215610d4857600080fd5b610d5186610ac2565b9450610d5f60208701610ac2565b93506040860135925060608601359150608086013567ffffffffffffffff811115610d8957600080fd5b610d2388828901610bf8565b600181811c90821680610da957607f821691505b602082108103610de2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e6f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b600081518084526020808501945080840160005b83811015610ea657815187529582019590820190600101610e8a565b509495945050505050565b604080825283519082018190526000906020906060840190828701845b82811015610f0057815173ffffffffffffffffffffffffffffffffffffffff1684529284019290840190600101610ece565b50505083810382850152610f148186610e76565b9695505050505050565b60006020808385031215610f3157600080fd5b825167ffffffffffffffff811115610f4857600080fd5b8301601f81018513610f5957600080fd5b8051610f67610bae82610b69565b81815260059190911b82018301908381019087831115610f8657600080fd5b928401925b82841015610fa457835182529284019290840190610f8b565b979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525060806040830152610fe86080830185610e76565b8281036060840152610fa48185610e76565b60006020828403121561100c57600080fd5b505191905056fea2646970667358221220096faf4f1ea2036193054940e5f451d1e24910d8212753c9c321a1a7254fa57264736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155ReceiverMock__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock__factory.d.ts b/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock__factory.d.ts index 74b7ff0..9b658b2 100644 --- a/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock__factory.d.ts +++ b/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1271WalletValidationMock__factory extends ContractFactor }): TransactionRequest; attach(address: string): ERC1271WalletValidationMock; connect(signer: Signer): ERC1271WalletValidationMock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506040516110b43803806110b483398101604081905261002f91610061565b600055600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000163317905561007a565b60006020828403121561007357600080fd5b5051919050565b61102b806100896000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80638da5cb5b1161005b5780638da5cb5b14610137578063a886100f1461017c578063bc197c81146101a3578063f23a6e61146101db57600080fd5b80630c0b5b8b1461008d5780631626ba7e146100ea57806320c13b0b146100fd5780632ec40aa414610110575b600080fd5b6100b47f20c13b0b0000000000000000000000000000000000000000000000000000000081565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100b46100f8366004610b78565b610213565b6100b461010b366004610bc4565b61041c565b6100b47f1626ba7e0000000000000000000000000000000000000000000000000000000081565b6001546101579073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100e1565b6100b47fdeadbeef0000000000000000000000000000000000000000000000000000000081565b6100b46101b1366004610de5565b7fbc197c810000000000000000000000000000000000000000000000000000000095945050505050565b6100b46101e9366004610e8f565b7ff23a6e610000000000000000000000000000000000000000000000000000000095945050505050565b60008061025a600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006102a2602086868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b90506000858560408181106102b9576102b9610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018b905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa158015610377573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506103ec577fdeadbeef0000000000000000000000000000000000000000000000000000000061040e565b7f1626ba7e000000000000000000000000000000000000000000000000000000005b9450505050505b9392505050565b600080610463600087878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006060807f31f4aeb4c6ce4241b2a2bb1b0fca5018eec89848248e6b6d8e0959d2639f0aa884016105be576104d389898080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250925060e091506108a29050565b915060006104e28360606107e6565b905060006104f18460806107e6565b90506042821415806105035750606481115b1561053757507fdeadbeef0000000000000000000000000000000000000000000000000000000095506107de945050505050565b61057b8b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060e092508e91506108a29050565b92506105b584848051906020012060405160200161059a929190610f47565b604051602081830303815290604052805190602001206109e5565b945050506105d9565b88886040516105ce929190610f69565b604051809103902092505b600061061f600089898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b9050600061066760208a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060008989604081811061067e5761067e610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018a905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa15801561073c573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506107b1577fdeadbeef000000000000000000000000000000000000000000000000000000006107d3565b7f20c13b0b000000000000000000000000000000000000000000000000000000005b985050505050505050505b949350505050565b60006107f3826020610fa8565b83511015610888576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084015b60405180910390fd5b610893602083610fa8565b91508183015190505b92915050565b60608183111561090e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b8351821115610979576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b6109838383610fbb565b67ffffffffffffffff81111561099b5761099b610c59565b6040519080825280601f01601f1916602001820160405280156109c5576020820181803683370190505b5090506104156020820184602087016109de9190610fa8565b8351610a50565b60006040518060400160405280600281526020017f190100000000000000000000000000000000000000000000000000000000000081525060005483604051602001610a3393929190610fce565b604051602081830303815290604052805190602001209050919050565b6020811015610a97578151835160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0180199092169116178352505050565b828203610aa357505050565b82821115610add5760208103905080820181840181515b82851015610ad5578451865260209586019590940193610aba565b905250505050565b60208103905080820181840183515b81861215610b2657825182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09283019290910190610aec565b85525050505050565b60008083601f840112610b4157600080fd5b50813567ffffffffffffffff811115610b5957600080fd5b602083019150836020828501011115610b7157600080fd5b9250929050565b600080600060408486031215610b8d57600080fd5b83359250602084013567ffffffffffffffff811115610bab57600080fd5b610bb786828701610b2f565b9497909650939450505050565b60008060008060408587031215610bda57600080fd5b843567ffffffffffffffff80821115610bf257600080fd5b610bfe88838901610b2f565b90965094506020870135915080821115610c1757600080fd5b50610c2487828801610b2f565b95989497509550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610c5457600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ccf57610ccf610c59565b604052919050565b600082601f830112610ce857600080fd5b8135602067ffffffffffffffff821115610d0457610d04610c59565b8160051b610d13828201610c88565b9283528481018201928281019087851115610d2d57600080fd5b83870192505b84831015610d4c57823582529183019190830190610d33565b979650505050505050565b600082601f830112610d6857600080fd5b813567ffffffffffffffff811115610d8257610d82610c59565b610db360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c88565b818152846020838601011115610dc857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610dfd57600080fd5b610e0686610c30565b9450610e1460208701610c30565b9350604086013567ffffffffffffffff80821115610e3157600080fd5b610e3d89838a01610cd7565b94506060880135915080821115610e5357600080fd5b610e5f89838a01610cd7565b93506080880135915080821115610e7557600080fd5b50610e8288828901610d57565b9150509295509295909350565b600080600080600060a08688031215610ea757600080fd5b610eb086610c30565b9450610ebe60208701610c30565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ee857600080fd5b610e8288828901610d57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60005b83811015610f3e578181015183820152602001610f26565b50506000910152565b60008351610f59818460208801610f23565b9190910191825250602001919050565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561089c5761089c610f79565b8181038181111561089c5761089c610f79565b60008451610fe0818460208901610f23565b9190910192835250602082015260400191905056fea2646970667358221220f701eb25102fbe91eb7678e8b6db3ed10117cfba28f689b998bc76f95c0d2b1d64736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b506040516110b43803806110b483398101604081905261002f91610061565b600055600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000163317905561007a565b60006020828403121561007357600080fd5b5051919050565b61102b806100896000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80638da5cb5b1161005b5780638da5cb5b14610137578063a886100f1461017c578063bc197c81146101a3578063f23a6e61146101db57600080fd5b80630c0b5b8b1461008d5780631626ba7e146100ea57806320c13b0b146100fd5780632ec40aa414610110575b600080fd5b6100b47f20c13b0b0000000000000000000000000000000000000000000000000000000081565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100b46100f8366004610b78565b610213565b6100b461010b366004610bc4565b61041c565b6100b47f1626ba7e0000000000000000000000000000000000000000000000000000000081565b6001546101579073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100e1565b6100b47fdeadbeef0000000000000000000000000000000000000000000000000000000081565b6100b46101b1366004610de5565b7fbc197c810000000000000000000000000000000000000000000000000000000095945050505050565b6100b46101e9366004610e8f565b7ff23a6e610000000000000000000000000000000000000000000000000000000095945050505050565b60008061025a600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006102a2602086868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b90506000858560408181106102b9576102b9610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018b905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa158015610377573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506103ec577fdeadbeef0000000000000000000000000000000000000000000000000000000061040e565b7f1626ba7e000000000000000000000000000000000000000000000000000000005b9450505050505b9392505050565b600080610463600087878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006060807f31f4aeb4c6ce4241b2a2bb1b0fca5018eec89848248e6b6d8e0959d2639f0aa884016105be576104d389898080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250925060e091506108a29050565b915060006104e28360606107e6565b905060006104f18460806107e6565b90506042821415806105035750606481115b1561053757507fdeadbeef0000000000000000000000000000000000000000000000000000000095506107de945050505050565b61057b8b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060e092508e91506108a29050565b92506105b584848051906020012060405160200161059a929190610f47565b604051602081830303815290604052805190602001206109e5565b945050506105d9565b88886040516105ce929190610f69565b604051809103902092505b600061061f600089898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b9050600061066760208a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060008989604081811061067e5761067e610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018a905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa15801561073c573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506107b1577fdeadbeef000000000000000000000000000000000000000000000000000000006107d3565b7f20c13b0b000000000000000000000000000000000000000000000000000000005b985050505050505050505b949350505050565b60006107f3826020610fa8565b83511015610888576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084015b60405180910390fd5b610893602083610fa8565b91508183015190505b92915050565b60608183111561090e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b8351821115610979576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b6109838383610fbb565b67ffffffffffffffff81111561099b5761099b610c59565b6040519080825280601f01601f1916602001820160405280156109c5576020820181803683370190505b5090506104156020820184602087016109de9190610fa8565b8351610a50565b60006040518060400160405280600281526020017f190100000000000000000000000000000000000000000000000000000000000081525060005483604051602001610a3393929190610fce565b604051602081830303815290604052805190602001209050919050565b6020811015610a97578151835160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0180199092169116178352505050565b828203610aa357505050565b82821115610add5760208103905080820181840181515b82851015610ad5578451865260209586019590940193610aba565b905250505050565b60208103905080820181840183515b81861215610b2657825182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09283019290910190610aec565b85525050505050565b60008083601f840112610b4157600080fd5b50813567ffffffffffffffff811115610b5957600080fd5b602083019150836020828501011115610b7157600080fd5b9250929050565b600080600060408486031215610b8d57600080fd5b83359250602084013567ffffffffffffffff811115610bab57600080fd5b610bb786828701610b2f565b9497909650939450505050565b60008060008060408587031215610bda57600080fd5b843567ffffffffffffffff80821115610bf257600080fd5b610bfe88838901610b2f565b90965094506020870135915080821115610c1757600080fd5b50610c2487828801610b2f565b95989497509550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610c5457600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ccf57610ccf610c59565b604052919050565b600082601f830112610ce857600080fd5b8135602067ffffffffffffffff821115610d0457610d04610c59565b8160051b610d13828201610c88565b9283528481018201928281019087851115610d2d57600080fd5b83870192505b84831015610d4c57823582529183019190830190610d33565b979650505050505050565b600082601f830112610d6857600080fd5b813567ffffffffffffffff811115610d8257610d82610c59565b610db360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c88565b818152846020838601011115610dc857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610dfd57600080fd5b610e0686610c30565b9450610e1460208701610c30565b9350604086013567ffffffffffffffff80821115610e3157600080fd5b610e3d89838a01610cd7565b94506060880135915080821115610e5357600080fd5b610e5f89838a01610cd7565b93506080880135915080821115610e7557600080fd5b50610e8288828901610d57565b9150509295509295909350565b600080600080600060a08688031215610ea757600080fd5b610eb086610c30565b9450610ebe60208701610c30565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ee857600080fd5b610e8288828901610d57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60005b83811015610f3e578181015183820152602001610f26565b50506000910152565b60008351610f59818460208801610f23565b9190910191825250602001919050565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561089c5761089c610f79565b8181038181111561089c5761089c610f79565b60008451610fe0818460208901610f23565b9190910192835250602082015260400191905056fea26469706673582212204c5b7824a40a7b9f03ac5efbfe70aec565552ea909fdc53b44c8dce522b5459f64736f6c63430008120033"; static readonly abi: ({ inputs: { internalType: string; diff --git a/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock__factory.js b/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock__factory.js index 6b0adba..7b1684b 100644 --- a/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock__factory.js +++ b/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock__factory.js @@ -193,7 +193,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b506040516110b43803806110b483398101604081905261002f91610061565b600055600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000163317905561007a565b60006020828403121561007357600080fd5b5051919050565b61102b806100896000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80638da5cb5b1161005b5780638da5cb5b14610137578063a886100f1461017c578063bc197c81146101a3578063f23a6e61146101db57600080fd5b80630c0b5b8b1461008d5780631626ba7e146100ea57806320c13b0b146100fd5780632ec40aa414610110575b600080fd5b6100b47f20c13b0b0000000000000000000000000000000000000000000000000000000081565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100b46100f8366004610b78565b610213565b6100b461010b366004610bc4565b61041c565b6100b47f1626ba7e0000000000000000000000000000000000000000000000000000000081565b6001546101579073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100e1565b6100b47fdeadbeef0000000000000000000000000000000000000000000000000000000081565b6100b46101b1366004610de5565b7fbc197c810000000000000000000000000000000000000000000000000000000095945050505050565b6100b46101e9366004610e8f565b7ff23a6e610000000000000000000000000000000000000000000000000000000095945050505050565b60008061025a600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006102a2602086868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b90506000858560408181106102b9576102b9610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018b905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa158015610377573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506103ec577fdeadbeef0000000000000000000000000000000000000000000000000000000061040e565b7f1626ba7e000000000000000000000000000000000000000000000000000000005b9450505050505b9392505050565b600080610463600087878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006060807f31f4aeb4c6ce4241b2a2bb1b0fca5018eec89848248e6b6d8e0959d2639f0aa884016105be576104d389898080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250925060e091506108a29050565b915060006104e28360606107e6565b905060006104f18460806107e6565b90506042821415806105035750606481115b1561053757507fdeadbeef0000000000000000000000000000000000000000000000000000000095506107de945050505050565b61057b8b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060e092508e91506108a29050565b92506105b584848051906020012060405160200161059a929190610f47565b604051602081830303815290604052805190602001206109e5565b945050506105d9565b88886040516105ce929190610f69565b604051809103902092505b600061061f600089898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b9050600061066760208a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060008989604081811061067e5761067e610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018a905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa15801561073c573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506107b1577fdeadbeef000000000000000000000000000000000000000000000000000000006107d3565b7f20c13b0b000000000000000000000000000000000000000000000000000000005b985050505050505050505b949350505050565b60006107f3826020610fa8565b83511015610888576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084015b60405180910390fd5b610893602083610fa8565b91508183015190505b92915050565b60608183111561090e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b8351821115610979576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b6109838383610fbb565b67ffffffffffffffff81111561099b5761099b610c59565b6040519080825280601f01601f1916602001820160405280156109c5576020820181803683370190505b5090506104156020820184602087016109de9190610fa8565b8351610a50565b60006040518060400160405280600281526020017f190100000000000000000000000000000000000000000000000000000000000081525060005483604051602001610a3393929190610fce565b604051602081830303815290604052805190602001209050919050565b6020811015610a97578151835160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0180199092169116178352505050565b828203610aa357505050565b82821115610add5760208103905080820181840181515b82851015610ad5578451865260209586019590940193610aba565b905250505050565b60208103905080820181840183515b81861215610b2657825182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09283019290910190610aec565b85525050505050565b60008083601f840112610b4157600080fd5b50813567ffffffffffffffff811115610b5957600080fd5b602083019150836020828501011115610b7157600080fd5b9250929050565b600080600060408486031215610b8d57600080fd5b83359250602084013567ffffffffffffffff811115610bab57600080fd5b610bb786828701610b2f565b9497909650939450505050565b60008060008060408587031215610bda57600080fd5b843567ffffffffffffffff80821115610bf257600080fd5b610bfe88838901610b2f565b90965094506020870135915080821115610c1757600080fd5b50610c2487828801610b2f565b95989497509550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610c5457600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ccf57610ccf610c59565b604052919050565b600082601f830112610ce857600080fd5b8135602067ffffffffffffffff821115610d0457610d04610c59565b8160051b610d13828201610c88565b9283528481018201928281019087851115610d2d57600080fd5b83870192505b84831015610d4c57823582529183019190830190610d33565b979650505050505050565b600082601f830112610d6857600080fd5b813567ffffffffffffffff811115610d8257610d82610c59565b610db360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c88565b818152846020838601011115610dc857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610dfd57600080fd5b610e0686610c30565b9450610e1460208701610c30565b9350604086013567ffffffffffffffff80821115610e3157600080fd5b610e3d89838a01610cd7565b94506060880135915080821115610e5357600080fd5b610e5f89838a01610cd7565b93506080880135915080821115610e7557600080fd5b50610e8288828901610d57565b9150509295509295909350565b600080600080600060a08688031215610ea757600080fd5b610eb086610c30565b9450610ebe60208701610c30565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ee857600080fd5b610e8288828901610d57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60005b83811015610f3e578181015183820152602001610f26565b50506000910152565b60008351610f59818460208801610f23565b9190910191825250602001919050565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561089c5761089c610f79565b8181038181111561089c5761089c610f79565b60008451610fe0818460208901610f23565b9190910192835250602082015260400191905056fea2646970667358221220f701eb25102fbe91eb7678e8b6db3ed10117cfba28f689b998bc76f95c0d2b1d64736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b506040516110b43803806110b483398101604081905261002f91610061565b600055600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000163317905561007a565b60006020828403121561007357600080fd5b5051919050565b61102b806100896000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80638da5cb5b1161005b5780638da5cb5b14610137578063a886100f1461017c578063bc197c81146101a3578063f23a6e61146101db57600080fd5b80630c0b5b8b1461008d5780631626ba7e146100ea57806320c13b0b146100fd5780632ec40aa414610110575b600080fd5b6100b47f20c13b0b0000000000000000000000000000000000000000000000000000000081565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100b46100f8366004610b78565b610213565b6100b461010b366004610bc4565b61041c565b6100b47f1626ba7e0000000000000000000000000000000000000000000000000000000081565b6001546101579073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100e1565b6100b47fdeadbeef0000000000000000000000000000000000000000000000000000000081565b6100b46101b1366004610de5565b7fbc197c810000000000000000000000000000000000000000000000000000000095945050505050565b6100b46101e9366004610e8f565b7ff23a6e610000000000000000000000000000000000000000000000000000000095945050505050565b60008061025a600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006102a2602086868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b90506000858560408181106102b9576102b9610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018b905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa158015610377573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506103ec577fdeadbeef0000000000000000000000000000000000000000000000000000000061040e565b7f1626ba7e000000000000000000000000000000000000000000000000000000005b9450505050505b9392505050565b600080610463600087878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006060807f31f4aeb4c6ce4241b2a2bb1b0fca5018eec89848248e6b6d8e0959d2639f0aa884016105be576104d389898080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250925060e091506108a29050565b915060006104e28360606107e6565b905060006104f18460806107e6565b90506042821415806105035750606481115b1561053757507fdeadbeef0000000000000000000000000000000000000000000000000000000095506107de945050505050565b61057b8b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060e092508e91506108a29050565b92506105b584848051906020012060405160200161059a929190610f47565b604051602081830303815290604052805190602001206109e5565b945050506105d9565b88886040516105ce929190610f69565b604051809103902092505b600061061f600089898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b9050600061066760208a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060008989604081811061067e5761067e610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018a905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa15801561073c573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506107b1577fdeadbeef000000000000000000000000000000000000000000000000000000006107d3565b7f20c13b0b000000000000000000000000000000000000000000000000000000005b985050505050505050505b949350505050565b60006107f3826020610fa8565b83511015610888576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084015b60405180910390fd5b610893602083610fa8565b91508183015190505b92915050565b60608183111561090e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b8351821115610979576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b6109838383610fbb565b67ffffffffffffffff81111561099b5761099b610c59565b6040519080825280601f01601f1916602001820160405280156109c5576020820181803683370190505b5090506104156020820184602087016109de9190610fa8565b8351610a50565b60006040518060400160405280600281526020017f190100000000000000000000000000000000000000000000000000000000000081525060005483604051602001610a3393929190610fce565b604051602081830303815290604052805190602001209050919050565b6020811015610a97578151835160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0180199092169116178352505050565b828203610aa357505050565b82821115610add5760208103905080820181840181515b82851015610ad5578451865260209586019590940193610aba565b905250505050565b60208103905080820181840183515b81861215610b2657825182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09283019290910190610aec565b85525050505050565b60008083601f840112610b4157600080fd5b50813567ffffffffffffffff811115610b5957600080fd5b602083019150836020828501011115610b7157600080fd5b9250929050565b600080600060408486031215610b8d57600080fd5b83359250602084013567ffffffffffffffff811115610bab57600080fd5b610bb786828701610b2f565b9497909650939450505050565b60008060008060408587031215610bda57600080fd5b843567ffffffffffffffff80821115610bf257600080fd5b610bfe88838901610b2f565b90965094506020870135915080821115610c1757600080fd5b50610c2487828801610b2f565b95989497509550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610c5457600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ccf57610ccf610c59565b604052919050565b600082601f830112610ce857600080fd5b8135602067ffffffffffffffff821115610d0457610d04610c59565b8160051b610d13828201610c88565b9283528481018201928281019087851115610d2d57600080fd5b83870192505b84831015610d4c57823582529183019190830190610d33565b979650505050505050565b600082601f830112610d6857600080fd5b813567ffffffffffffffff811115610d8257610d82610c59565b610db360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c88565b818152846020838601011115610dc857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610dfd57600080fd5b610e0686610c30565b9450610e1460208701610c30565b9350604086013567ffffffffffffffff80821115610e3157600080fd5b610e3d89838a01610cd7565b94506060880135915080821115610e5357600080fd5b610e5f89838a01610cd7565b93506080880135915080821115610e7557600080fd5b50610e8288828901610d57565b9150509295509295909350565b600080600080600060a08688031215610ea757600080fd5b610eb086610c30565b9450610ebe60208701610c30565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ee857600080fd5b610e8288828901610d57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60005b83811015610f3e578181015183820152602001610f26565b50506000910152565b60008351610f59818460208801610f23565b9190910191825250602001919050565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561089c5761089c610f79565b8181038181111561089c5761089c610f79565b60008451610fe0818460208901610f23565b9190910192835250602082015260400191905056fea26469706673582212204c5b7824a40a7b9f03ac5efbfe70aec565552ea909fdc53b44c8dce522b5459f64736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1271WalletValidationMock__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/LibEIP712__factory.d.ts b/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/LibEIP712__factory.d.ts index d12a038..5c16884 100644 --- a/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/LibEIP712__factory.d.ts +++ b/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/LibEIP712__factory.d.ts @@ -13,7 +13,7 @@ export declare class LibEIP712__factory extends ContractFactory { }): TransactionRequest; attach(address: string): LibEIP712; connect(signer: Signer): LibEIP712__factory; - static readonly bytecode = "0x6080604052348015600f57600080fd5b5060405160953803806095833981016040819052602a916031565b6000556049565b600060208284031215604257600080fd5b5051919050565b603f8060566000396000f3fe6080604052600080fdfea264697066735822122037156843bc171e499afc64a1215611401502286696479e350818b7eaf0b20b0f64736f6c63430008120033"; + static readonly bytecode = "0x6080604052348015600f57600080fd5b5060405160953803806095833981016040819052602a916031565b6000556049565b600060208284031215604257600080fd5b5051919050565b603f8060566000396000f3fe6080604052600080fdfea2646970667358221220cd1f9de5e29e20bb5ea8eb01fa9d2ad1c972c07d41693e641db0ed71e96ad68364736f6c63430008120033"; static readonly abi: { inputs: { internalType: string; diff --git a/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/LibEIP712__factory.js b/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/LibEIP712__factory.js index 0cd896d..7cdd28f 100644 --- a/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/LibEIP712__factory.js +++ b/src/adapter/factories/mocks/ERC1271WalletValidationMock.sol/LibEIP712__factory.js @@ -15,7 +15,7 @@ const _abi = [ type: "constructor", }, ]; -const _bytecode = "0x6080604052348015600f57600080fd5b5060405160953803806095833981016040819052602a916031565b6000556049565b600060208284031215604257600080fd5b5051919050565b603f8060566000396000f3fe6080604052600080fdfea264697066735822122037156843bc171e499afc64a1215611401502286696479e350818b7eaf0b20b0f64736f6c63430008120033"; +const _bytecode = "0x6080604052348015600f57600080fd5b5060405160953803806095833981016040819052602a916031565b6000556049565b600060208284031215604257600080fd5b5051919050565b603f8060566000396000f3fe6080604052600080fdfea2646970667358221220cd1f9de5e29e20bb5ea8eb01fa9d2ad1c972c07d41693e641db0ed71e96ad68364736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class LibEIP712__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/ERC20Mock.sol/ERC20Mock__factory.d.ts b/src/adapter/factories/mocks/ERC20Mock.sol/ERC20Mock__factory.d.ts index 27760c5..e2257cb 100644 --- a/src/adapter/factories/mocks/ERC20Mock.sol/ERC20Mock__factory.d.ts +++ b/src/adapter/factories/mocks/ERC20Mock.sol/ERC20Mock__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC20Mock__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC20Mock; connect(signer: Signer): ERC20Mock__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061094d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c80633950935111610076578063a457c2d71161005b578063a457c2d714610181578063a9059cbb14610194578063dd62ed3e146101a757600080fd5b8063395093511461013857806370a082311461014b57600080fd5b806323b872dd116100a757806323b872dd146100fd5780632e72102f14610110578063378934b41461012557600080fd5b8063095ea7b3146100c357806318160ddd146100eb575b600080fd5b6100d66100d13660046106ae565b6101ed565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100e2565b6100d661010b3660046106d8565b610204565b61012361011e366004610760565b610263565b005b6101236101333660046106ae565b61037b565b6100d66101463660046106ae565b610389565b6100ef6101593660046107e4565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100d661018f3660046106ae565b6103cd565b6100d66101a23660046106ae565b610411565b6100ef6101b5366004610806565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60006101fa33848461041e565b5060015b92915050565b60006102118484846104cd565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033808552925290912054610259918691610254908690610868565b61041e565b5060019392505050565b60005b81811015610373578585828181106102805761028061087b565b905060200201602081019061029591906107e4565b73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb858585858181106102c3576102c361087b565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815273ffffffffffffffffffffffffffffffffffffffff909416600485015260200291909101356024830152506044016020604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036091906108aa565b508061036b816108cc565b915050610266565b505050505050565b61038582826105c2565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610904565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610868565b60006101fa3384846104cd565b73ffffffffffffffffffffffffffffffffffffffff821661043e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831661045e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff82166104ed57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604081208054839290610522908490610868565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061055c908490610904565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516104c091815260200190565b73ffffffffffffffffffffffffffffffffffffffff82166105e257600080fd5b80600260008282546105f49190610904565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061062e908490610904565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b803573ffffffffffffffffffffffffffffffffffffffff811681146106a957600080fd5b919050565b600080604083850312156106c157600080fd5b6106ca83610685565b946020939093013593505050565b6000806000606084860312156106ed57600080fd5b6106f684610685565b925061070460208501610685565b9150604084013590509250925092565b60008083601f84011261072657600080fd5b50813567ffffffffffffffff81111561073e57600080fd5b6020830191508360208260051b850101111561075957600080fd5b9250929050565b60008060008060006060868803121561077857600080fd5b853567ffffffffffffffff8082111561079057600080fd5b61079c89838a01610714565b90975095508591506107b060208901610685565b945060408801359150808211156107c657600080fd5b506107d388828901610714565b969995985093965092949392505050565b6000602082840312156107f657600080fd5b6107ff82610685565b9392505050565b6000806040838503121561081957600080fd5b61082283610685565b915061083060208401610685565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101fe576101fe610839565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000602082840312156108bc57600080fd5b815180151581146107ff57600080fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036108fd576108fd610839565b5060010190565b808201808211156101fe576101fe61083956fea2646970667358221220121c90e1b5286285789a8100cdc0cd6292c333b5275fcfa9552ce6b109c9763b64736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061094d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c80633950935111610076578063a457c2d71161005b578063a457c2d714610181578063a9059cbb14610194578063dd62ed3e146101a757600080fd5b8063395093511461013857806370a082311461014b57600080fd5b806323b872dd116100a757806323b872dd146100fd5780632e72102f14610110578063378934b41461012557600080fd5b8063095ea7b3146100c357806318160ddd146100eb575b600080fd5b6100d66100d13660046106ae565b6101ed565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100e2565b6100d661010b3660046106d8565b610204565b61012361011e366004610760565b610263565b005b6101236101333660046106ae565b61037b565b6100d66101463660046106ae565b610389565b6100ef6101593660046107e4565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100d661018f3660046106ae565b6103cd565b6100d66101a23660046106ae565b610411565b6100ef6101b5366004610806565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60006101fa33848461041e565b5060015b92915050565b60006102118484846104cd565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033808552925290912054610259918691610254908690610868565b61041e565b5060019392505050565b60005b81811015610373578585828181106102805761028061087b565b905060200201602081019061029591906107e4565b73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb858585858181106102c3576102c361087b565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815273ffffffffffffffffffffffffffffffffffffffff909416600485015260200291909101356024830152506044016020604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036091906108aa565b508061036b816108cc565b915050610266565b505050505050565b61038582826105c2565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610904565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610868565b60006101fa3384846104cd565b73ffffffffffffffffffffffffffffffffffffffff821661043e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831661045e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff82166104ed57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604081208054839290610522908490610868565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061055c908490610904565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516104c091815260200190565b73ffffffffffffffffffffffffffffffffffffffff82166105e257600080fd5b80600260008282546105f49190610904565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061062e908490610904565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b803573ffffffffffffffffffffffffffffffffffffffff811681146106a957600080fd5b919050565b600080604083850312156106c157600080fd5b6106ca83610685565b946020939093013593505050565b6000806000606084860312156106ed57600080fd5b6106f684610685565b925061070460208501610685565b9150604084013590509250925092565b60008083601f84011261072657600080fd5b50813567ffffffffffffffff81111561073e57600080fd5b6020830191508360208260051b850101111561075957600080fd5b9250929050565b60008060008060006060868803121561077857600080fd5b853567ffffffffffffffff8082111561079057600080fd5b61079c89838a01610714565b90975095508591506107b060208901610685565b945060408801359150808211156107c657600080fd5b506107d388828901610714565b969995985093965092949392505050565b6000602082840312156107f657600080fd5b6107ff82610685565b9392505050565b6000806040838503121561081957600080fd5b61082283610685565b915061083060208401610685565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101fe576101fe610839565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000602082840312156108bc57600080fd5b815180151581146107ff57600080fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036108fd576108fd610839565b5060010190565b808201808211156101fe576101fe61083956fea26469706673582212205ec7cefcc639ef98577551ce8e790ce2f7e2fcba120ceba5125bbe254a364e0764736f6c63430008120033"; static readonly abi: ({ inputs: never[]; stateMutability: string; diff --git a/src/adapter/factories/mocks/ERC20Mock.sol/ERC20Mock__factory.js b/src/adapter/factories/mocks/ERC20Mock.sol/ERC20Mock__factory.js index 117d4ac..a3b2f22 100644 --- a/src/adapter/factories/mocks/ERC20Mock.sol/ERC20Mock__factory.js +++ b/src/adapter/factories/mocks/ERC20Mock.sol/ERC20Mock__factory.js @@ -281,7 +281,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b5061094d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c80633950935111610076578063a457c2d71161005b578063a457c2d714610181578063a9059cbb14610194578063dd62ed3e146101a757600080fd5b8063395093511461013857806370a082311461014b57600080fd5b806323b872dd116100a757806323b872dd146100fd5780632e72102f14610110578063378934b41461012557600080fd5b8063095ea7b3146100c357806318160ddd146100eb575b600080fd5b6100d66100d13660046106ae565b6101ed565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100e2565b6100d661010b3660046106d8565b610204565b61012361011e366004610760565b610263565b005b6101236101333660046106ae565b61037b565b6100d66101463660046106ae565b610389565b6100ef6101593660046107e4565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100d661018f3660046106ae565b6103cd565b6100d66101a23660046106ae565b610411565b6100ef6101b5366004610806565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60006101fa33848461041e565b5060015b92915050565b60006102118484846104cd565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033808552925290912054610259918691610254908690610868565b61041e565b5060019392505050565b60005b81811015610373578585828181106102805761028061087b565b905060200201602081019061029591906107e4565b73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb858585858181106102c3576102c361087b565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815273ffffffffffffffffffffffffffffffffffffffff909416600485015260200291909101356024830152506044016020604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036091906108aa565b508061036b816108cc565b915050610266565b505050505050565b61038582826105c2565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610904565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610868565b60006101fa3384846104cd565b73ffffffffffffffffffffffffffffffffffffffff821661043e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831661045e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff82166104ed57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604081208054839290610522908490610868565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061055c908490610904565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516104c091815260200190565b73ffffffffffffffffffffffffffffffffffffffff82166105e257600080fd5b80600260008282546105f49190610904565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061062e908490610904565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b803573ffffffffffffffffffffffffffffffffffffffff811681146106a957600080fd5b919050565b600080604083850312156106c157600080fd5b6106ca83610685565b946020939093013593505050565b6000806000606084860312156106ed57600080fd5b6106f684610685565b925061070460208501610685565b9150604084013590509250925092565b60008083601f84011261072657600080fd5b50813567ffffffffffffffff81111561073e57600080fd5b6020830191508360208260051b850101111561075957600080fd5b9250929050565b60008060008060006060868803121561077857600080fd5b853567ffffffffffffffff8082111561079057600080fd5b61079c89838a01610714565b90975095508591506107b060208901610685565b945060408801359150808211156107c657600080fd5b506107d388828901610714565b969995985093965092949392505050565b6000602082840312156107f657600080fd5b6107ff82610685565b9392505050565b6000806040838503121561081957600080fd5b61082283610685565b915061083060208401610685565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101fe576101fe610839565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000602082840312156108bc57600080fd5b815180151581146107ff57600080fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036108fd576108fd610839565b5060010190565b808201808211156101fe576101fe61083956fea2646970667358221220121c90e1b5286285789a8100cdc0cd6292c333b5275fcfa9552ce6b109c9763b64736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b5061094d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c80633950935111610076578063a457c2d71161005b578063a457c2d714610181578063a9059cbb14610194578063dd62ed3e146101a757600080fd5b8063395093511461013857806370a082311461014b57600080fd5b806323b872dd116100a757806323b872dd146100fd5780632e72102f14610110578063378934b41461012557600080fd5b8063095ea7b3146100c357806318160ddd146100eb575b600080fd5b6100d66100d13660046106ae565b6101ed565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100e2565b6100d661010b3660046106d8565b610204565b61012361011e366004610760565b610263565b005b6101236101333660046106ae565b61037b565b6100d66101463660046106ae565b610389565b6100ef6101593660046107e4565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100d661018f3660046106ae565b6103cd565b6100d66101a23660046106ae565b610411565b6100ef6101b5366004610806565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60006101fa33848461041e565b5060015b92915050565b60006102118484846104cd565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033808552925290912054610259918691610254908690610868565b61041e565b5060019392505050565b60005b81811015610373578585828181106102805761028061087b565b905060200201602081019061029591906107e4565b73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb858585858181106102c3576102c361087b565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815273ffffffffffffffffffffffffffffffffffffffff909416600485015260200291909101356024830152506044016020604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036091906108aa565b508061036b816108cc565b915050610266565b505050505050565b61038582826105c2565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610904565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610868565b60006101fa3384846104cd565b73ffffffffffffffffffffffffffffffffffffffff821661043e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831661045e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff82166104ed57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604081208054839290610522908490610868565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061055c908490610904565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516104c091815260200190565b73ffffffffffffffffffffffffffffffffffffffff82166105e257600080fd5b80600260008282546105f49190610904565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061062e908490610904565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b803573ffffffffffffffffffffffffffffffffffffffff811681146106a957600080fd5b919050565b600080604083850312156106c157600080fd5b6106ca83610685565b946020939093013593505050565b6000806000606084860312156106ed57600080fd5b6106f684610685565b925061070460208501610685565b9150604084013590509250925092565b60008083601f84011261072657600080fd5b50813567ffffffffffffffff81111561073e57600080fd5b6020830191508360208260051b850101111561075957600080fd5b9250929050565b60008060008060006060868803121561077857600080fd5b853567ffffffffffffffff8082111561079057600080fd5b61079c89838a01610714565b90975095508591506107b060208901610685565b945060408801359150808211156107c657600080fd5b506107d388828901610714565b969995985093965092949392505050565b6000602082840312156107f657600080fd5b6107ff82610685565b9392505050565b6000806040838503121561081957600080fd5b61082283610685565b915061083060208401610685565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101fe576101fe610839565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000602082840312156108bc57600080fd5b815180151581146107ff57600080fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036108fd576108fd610839565b5060010190565b808201808211156101fe576101fe61083956fea26469706673582212205ec7cefcc639ef98577551ce8e790ce2f7e2fcba120ceba5125bbe254a364e0764736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC20Mock__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/ERC20Mock.sol/ERC20__factory.d.ts b/src/adapter/factories/mocks/ERC20Mock.sol/ERC20__factory.d.ts index 6aa9c2c..3469cf8 100644 --- a/src/adapter/factories/mocks/ERC20Mock.sol/ERC20__factory.d.ts +++ b/src/adapter/factories/mocks/ERC20Mock.sol/ERC20__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC20__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC20; connect(signer: Signer): ERC20__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506105ad806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100ed578063a457c2d714610123578063a9059cbb14610136578063dd62ed3e1461014957600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100c757806339509351146100da575b600080fd5b6100a061009b366004610467565b61018f565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100ac565b6100a06100d5366004610491565b6101a6565b6100a06100e8366004610467565b610205565b6100b96100fb3660046104cd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100a0610131366004610467565b610249565b6100a0610144366004610467565b61028d565b6100b96101573660046104ef565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b600061019c33848461029a565b5060015b92915050565b60006101b3848484610349565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600160209081526040808320338085529252909120546101fb9186916101f6908690610551565b61029a565b5060019392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610564565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610551565b600061019c338484610349565b73ffffffffffffffffffffffffffffffffffffffff82166102ba57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166102da57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff821661036957600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120805483929061039e908490610551565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260208190526040812080548392906103d8908490610564565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161033c91815260200190565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046257600080fd5b919050565b6000806040838503121561047a57600080fd5b6104838361043e565b946020939093013593505050565b6000806000606084860312156104a657600080fd5b6104af8461043e565b92506104bd6020850161043e565b9150604084013590509250925092565b6000602082840312156104df57600080fd5b6104e88261043e565b9392505050565b6000806040838503121561050257600080fd5b61050b8361043e565b91506105196020840161043e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101a0576101a0610522565b808201808211156101a0576101a061052256fea2646970667358221220b20da9cf164581965801fed5bbe544b3ca3278011be068a45ef821c893f57d9d64736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b506105ad806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100ed578063a457c2d714610123578063a9059cbb14610136578063dd62ed3e1461014957600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100c757806339509351146100da575b600080fd5b6100a061009b366004610467565b61018f565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100ac565b6100a06100d5366004610491565b6101a6565b6100a06100e8366004610467565b610205565b6100b96100fb3660046104cd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100a0610131366004610467565b610249565b6100a0610144366004610467565b61028d565b6100b96101573660046104ef565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b600061019c33848461029a565b5060015b92915050565b60006101b3848484610349565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600160209081526040808320338085529252909120546101fb9186916101f6908690610551565b61029a565b5060019392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610564565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610551565b600061019c338484610349565b73ffffffffffffffffffffffffffffffffffffffff82166102ba57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166102da57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff821661036957600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120805483929061039e908490610551565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260208190526040812080548392906103d8908490610564565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161033c91815260200190565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046257600080fd5b919050565b6000806040838503121561047a57600080fd5b6104838361043e565b946020939093013593505050565b6000806000606084860312156104a657600080fd5b6104af8461043e565b92506104bd6020850161043e565b9150604084013590509250925092565b6000602082840312156104df57600080fd5b6104e88261043e565b9392505050565b6000806040838503121561050257600080fd5b61050b8361043e565b91506105196020840161043e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101a0576101a0610522565b808201808211156101a0576101a061052256fea264697066735822122004f238f212c507affa391daf77fc2bc94ff505ad9b1db74c5f9b57a477cef4d564736f6c63430008120033"; static readonly abi: ({ anonymous: boolean; inputs: { diff --git a/src/adapter/factories/mocks/ERC20Mock.sol/ERC20__factory.js b/src/adapter/factories/mocks/ERC20Mock.sol/ERC20__factory.js index cc9d3fe..4bb3bed 100644 --- a/src/adapter/factories/mocks/ERC20Mock.sol/ERC20__factory.js +++ b/src/adapter/factories/mocks/ERC20Mock.sol/ERC20__factory.js @@ -235,7 +235,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b506105ad806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100ed578063a457c2d714610123578063a9059cbb14610136578063dd62ed3e1461014957600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100c757806339509351146100da575b600080fd5b6100a061009b366004610467565b61018f565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100ac565b6100a06100d5366004610491565b6101a6565b6100a06100e8366004610467565b610205565b6100b96100fb3660046104cd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100a0610131366004610467565b610249565b6100a0610144366004610467565b61028d565b6100b96101573660046104ef565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b600061019c33848461029a565b5060015b92915050565b60006101b3848484610349565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600160209081526040808320338085529252909120546101fb9186916101f6908690610551565b61029a565b5060019392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610564565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610551565b600061019c338484610349565b73ffffffffffffffffffffffffffffffffffffffff82166102ba57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166102da57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff821661036957600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120805483929061039e908490610551565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260208190526040812080548392906103d8908490610564565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161033c91815260200190565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046257600080fd5b919050565b6000806040838503121561047a57600080fd5b6104838361043e565b946020939093013593505050565b6000806000606084860312156104a657600080fd5b6104af8461043e565b92506104bd6020850161043e565b9150604084013590509250925092565b6000602082840312156104df57600080fd5b6104e88261043e565b9392505050565b6000806040838503121561050257600080fd5b61050b8361043e565b91506105196020840161043e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101a0576101a0610522565b808201808211156101a0576101a061052256fea2646970667358221220b20da9cf164581965801fed5bbe544b3ca3278011be068a45ef821c893f57d9d64736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b506105ad806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100ed578063a457c2d714610123578063a9059cbb14610136578063dd62ed3e1461014957600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100c757806339509351146100da575b600080fd5b6100a061009b366004610467565b61018f565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100ac565b6100a06100d5366004610491565b6101a6565b6100a06100e8366004610467565b610205565b6100b96100fb3660046104cd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100a0610131366004610467565b610249565b6100a0610144366004610467565b61028d565b6100b96101573660046104ef565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b600061019c33848461029a565b5060015b92915050565b60006101b3848484610349565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600160209081526040808320338085529252909120546101fb9186916101f6908690610551565b61029a565b5060019392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610564565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610551565b600061019c338484610349565b73ffffffffffffffffffffffffffffffffffffffff82166102ba57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166102da57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff821661036957600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120805483929061039e908490610551565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260208190526040812080548392906103d8908490610564565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161033c91815260200190565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046257600080fd5b919050565b6000806040838503121561047a57600080fd5b6104838361043e565b946020939093013593505050565b6000806000606084860312156104a657600080fd5b6104af8461043e565b92506104bd6020850161043e565b9150604084013590509250925092565b6000602082840312156104df57600080fd5b6104e88261043e565b9392505050565b6000806040838503121561050257600080fd5b61050b8361043e565b91506105196020840161043e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101a0576101a0610522565b808201808211156101a0576101a061052256fea264697066735822122004f238f212c507affa391daf77fc2bc94ff505ad9b1db74c5f9b57a477cef4d564736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC20__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/ERC2981GlobalMock__factory.d.ts b/src/adapter/factories/mocks/ERC2981GlobalMock__factory.d.ts index df0a997..d148504 100644 --- a/src/adapter/factories/mocks/ERC2981GlobalMock__factory.d.ts +++ b/src/adapter/factories/mocks/ERC2981GlobalMock__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC2981GlobalMock__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC2981GlobalMock; connect(signer: Signer): ERC2981GlobalMock__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620028bb380380620028bb833981016040819052620000349162000146565b81818181600362000046838262000240565b50600262000055828262000240565b5050505050505062000367565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008a57600080fd5b815167ffffffffffffffff80821115620000a857620000a862000062565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000f157620000f162000062565b816040528381526020925086838588010111156200010e57600080fd5b600091505b8382101562000132578582018301518183018401529082019062000113565b600093810190920192909252949350505050565b600080604083850312156200015a57600080fd5b825167ffffffffffffffff808211156200017357600080fd5b620001818683870162000078565b935060208501519150808211156200019857600080fd5b50620001a78582860162000078565b9150509250929050565b600181811c90821680620001c657607f821691505b602082108103620001e757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023b57600081815260208120601f850160051c81016020861015620002165750805b601f850160051c820191505b81811015620002375782815560010162000222565b5050505b505050565b815167ffffffffffffffff8111156200025d576200025d62000062565b62000275816200026e8454620001b1565b84620001ed565b602080601f831160018114620002cb5760008415620002945750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000237565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031a57888601518255948401946001909101908401620002f9565b50858210156200035757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61254480620003776000396000f3fe608060405234801561001057600080fd5b506004361061011a5760003560e01c80636c0360eb116100b2578063bd7a6c4111610081578063d7a0ad9011610066578063d7a0ad9014610317578063e985e9c51461032a578063f242432a146103735761011a565b8063bd7a6c41146102e0578063c9823cc6146102f35761011a565b80636c0360eb1461029f57806393cfa682146102a7578063a22cb465146102ba578063a3f091f5146102cd5761011a565b80632a55205a116100ee5780632a55205a146102185780632eb2c2d614610257578063437ecbe91461026c5780634e1273f41461027f5761011a565b8062fdd58e146101a757806301ffc9a7146101cd57806306fdde03146101f05780630e89341c14610205575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101ba6101b5366004611a7e565b610386565b6040519081526020015b60405180910390f35b6101e06101db366004611ad9565b6103bc565b60405190151581526020016101c4565b6101f86103c7565b6040516101c49190611b64565b6101f8610213366004611b77565b610455565b61022b610226366004611b90565b610489565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101c4565b61026a610265366004611d4d565b6104e4565b005b61026a61027a366004611df7565b610688565b61029261028d366004611e2a565b610698565b6040516101c49190611f25565b6101f8610838565b61026a6102b5366004611a7e565b610845565b61026a6102c8366004611f38565b610853565b61026a6102db366004611f74565b6108ea565b61026a6102ee366004611fd5565b6108fc565b60045460055461022b9173ffffffffffffffffffffffffffffffffffffffff169082565b61026a610325366004612049565b610907565b6101e06103383660046120d6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61026a610381366004612109565b610913565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103b682610ab0565b600380546103d49061216e565b80601f01602080910402602001604051908101604052809291908181526020018280546104009061216e565b801561044d5780601f106104225761010080835404028352916020019161044d565b820191906000526020600020905b81548152906001019060200180831161043057829003601f168201915b505050505081565b6060600261046283610b0c565b6040516020016104739291906121dd565b6040516020818303038152906040529050919050565b6040805180820190915260045473ffffffffffffffffffffffffffffffffffffffff1680825260055460208301819052600092839290916103e8906104ce9087612319565b6104d89190612330565b92509250509250929050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610538575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610667576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161019e565b61067385858585610c6c565b610681858585855a86610ed1565b5050505050565b61069383838361105a565b505050565b6060815183511461072b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161019e565b6000835167ffffffffffffffff81111561074757610747611bb2565b604051908082528060200260200182016040528015610770578160200160208202803683370190505b50905060005b8451811015610830576000808683815181106107945761079461236b565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107ea576107ea61236b565b60200260200101518152602001908152602001600020548282815181106108135761081361236b565b6020908102919091010152806108288161239a565b915050610776565b509392505050565b600280546103d49061216e565b61084f82826110f8565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6108f684848484611278565b50505050565b610693838383611320565b6108f6848484846114ec565b3373ffffffffffffffffffffffffffffffffffffffff86161480610967575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6109f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610a96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161019e565b610aa2858585856116c2565b610681858585855a8661179d565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610b0357506001919050565b6103b68261191c565b606081600003610b4f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610b795780610b638161239a565b9150610b729050600a83612330565b9150610b53565b60008167ffffffffffffffff811115610b9457610b94611bb2565b6040519080825280601f01601f191660200182016040528015610bbe576020820181803683370190505b509050815b8515610c6357610bd46001826123d2565b90506000610be3600a88612330565b610bee90600a612319565b610bf890886123d2565b610c039060306123e5565b905060008160f81b905080848481518110610c2057610c2061236b565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610c5a600a89612330565b97505050610bc3565b50949350505050565b8051825114610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161019e565b815160005b81811015610e4b57828181518110610d1c57610d1c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d7657610d7661236b565b602002602001015181526020019081526020016000206000828254610d9b91906123d2565b92505081905550828181518110610db457610db461236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610e0e57610e0e61236b565b602002602001015181526020019081526020016000206000828254610e3391906123fe565b90915550819050610e438161239a565b915050610d02565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610ec2929190612411565b60405180910390a45050505050565b610ef08573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f39959493929190612436565b60206040518083038160008887f1158015610f58573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f7d91906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161019e565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110989084906123d2565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff821661119b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f20524543495049454e545f49535f307830000000000000000000000000000000606482015260840161019e565b6103e881111561122d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f204645455f49535f41424f56455f3130305f50455243454e5400000000000000606482015260840161019e565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155600555565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906112b69084906123fe565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108f660008585855a8661179d565b8151815181146113b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b60005b81811015611466578281815181106113cf576113cf61236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106114295761142961236b565b60200260200101518152602001908152602001600020600082825461144e91906123d2565b9091555081905061145e8161239a565b9150506113b5565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516114de929190612411565b60405180910390a450505050565b815183511461157d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b825160005b818110156116335783818151811061159c5761159c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106115f6576115f661236b565b60200260200101518152602001908152602001600020600082825461161b91906123fe565b9091555081905061162b8161239a565b915050611582565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516116ab929190612411565b60405180910390a461068160008686865a87610ed1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117009084906123d2565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906117439084906123fe565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016114de565b6117bc8573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118059594939291906124be565b60206040518083038160008887f1158015611824573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061184991906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161019e565b60006103b682611961565b6000813f801580159061195a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016119b457506001919050565b6103b68260007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a0b57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103b6565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a7957600080fd5b919050565b60008060408385031215611a9157600080fd5b611a9a83611a55565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611ad657600080fd5b50565b600060208284031215611aeb57600080fd5b813561195a81611aa8565b60005b83811015611b11578181015183820152602001611af9565b50506000910152565b60008151808452611b32816020860160208601611af6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061195a6020830184611b1a565b600060208284031215611b8957600080fd5b5035919050565b60008060408385031215611ba357600080fd5b50508035926020909101359150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c2857611c28611bb2565b604052919050565b600067ffffffffffffffff821115611c4a57611c4a611bb2565b5060051b60200190565b600082601f830112611c6557600080fd5b81356020611c7a611c7583611c30565b611be1565b82815260059290921b84018101918181019086841115611c9957600080fd5b8286015b84811015611cb45780358352918301918301611c9d565b509695505050505050565b600082601f830112611cd057600080fd5b813567ffffffffffffffff811115611cea57611cea611bb2565b611d1b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611be1565b818152846020838601011115611d3057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611d6557600080fd5b611d6e86611a55565b9450611d7c60208701611a55565b9350604086013567ffffffffffffffff80821115611d9957600080fd5b611da589838a01611c54565b94506060880135915080821115611dbb57600080fd5b611dc789838a01611c54565b93506080880135915080821115611ddd57600080fd5b50611dea88828901611cbf565b9150509295509295909350565b600080600060608486031215611e0c57600080fd5b611e1584611a55565b95602085013595506040909401359392505050565b60008060408385031215611e3d57600080fd5b823567ffffffffffffffff80821115611e5557600080fd5b818501915085601f830112611e6957600080fd5b81356020611e79611c7583611c30565b82815260059290921b84018101918181019089841115611e9857600080fd5b948201945b83861015611ebd57611eae86611a55565b82529482019490820190611e9d565b96505086013592505080821115611ed357600080fd5b50611ee085828601611c54565b9150509250929050565b600081518084526020808501945080840160005b83811015611f1a57815187529582019590820190600101611efe565b509495945050505050565b60208152600061195a6020830184611eea565b60008060408385031215611f4b57600080fd5b611f5483611a55565b915060208301358015158114611f6957600080fd5b809150509250929050565b60008060008060808587031215611f8a57600080fd5b611f9385611a55565b93506020850135925060408501359150606085013567ffffffffffffffff811115611fbd57600080fd5b611fc987828801611cbf565b91505092959194509250565b600080600060608486031215611fea57600080fd5b611ff384611a55565b9250602084013567ffffffffffffffff8082111561201057600080fd5b61201c87838801611c54565b9350604086013591508082111561203257600080fd5b5061203f86828701611c54565b9150509250925092565b6000806000806080858703121561205f57600080fd5b61206885611a55565b9350602085013567ffffffffffffffff8082111561208557600080fd5b61209188838901611c54565b945060408701359150808211156120a757600080fd5b6120b388838901611c54565b935060608701359150808211156120c957600080fd5b50611fc987828801611cbf565b600080604083850312156120e957600080fd5b6120f283611a55565b915061210060208401611a55565b90509250929050565b600080600080600060a0868803121561212157600080fd5b61212a86611a55565b945061213860208701611a55565b93506040860135925060608601359150608086013567ffffffffffffffff81111561216257600080fd5b611dea88828901611cbf565b600181811c9082168061218257607f821691505b6020821081036121bb577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516121d3818560208601611af6565b9290920192915050565b600080845481600182811c9150808316806121f957607f831692505b60208084108203612231577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b8180156122455760018114612278576122a5565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122a5565b60008b81526020902060005b8681101561229d5781548b820152908501908301612284565b505084890196505b5050505050506122e16122b882866121c1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176103b6576103b66122ea565b600082612366577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123cb576123cb6122ea565b5060010190565b818103818111156103b6576103b66122ea565b60ff81811683821601908111156103b6576103b66122ea565b808201808211156103b6576103b66122ea565b6040815260006124246040830185611eea565b82810360208401526122e18185611eea565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261246f60a0830186611eea565b82810360608401526124818186611eea565b905082810360808401526124958185611b1a565b98975050505050505050565b6000602082840312156124b357600080fd5b815161195a81611aa8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261250360a0830184611b1a565b97965050505050505056fea2646970667358221220f87e3e4a17bc764420c06ca9abd70fb8a97acf07693145f4dc8c7e5e997b1a2264736f6c63430008120033"; + static readonly bytecode = "0x60806040523480156200001157600080fd5b50604051620028bb380380620028bb833981016040819052620000349162000146565b81818181600362000046838262000240565b50600262000055828262000240565b5050505050505062000367565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008a57600080fd5b815167ffffffffffffffff80821115620000a857620000a862000062565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000f157620000f162000062565b816040528381526020925086838588010111156200010e57600080fd5b600091505b8382101562000132578582018301518183018401529082019062000113565b600093810190920192909252949350505050565b600080604083850312156200015a57600080fd5b825167ffffffffffffffff808211156200017357600080fd5b620001818683870162000078565b935060208501519150808211156200019857600080fd5b50620001a78582860162000078565b9150509250929050565b600181811c90821680620001c657607f821691505b602082108103620001e757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023b57600081815260208120601f850160051c81016020861015620002165750805b601f850160051c820191505b81811015620002375782815560010162000222565b5050505b505050565b815167ffffffffffffffff8111156200025d576200025d62000062565b62000275816200026e8454620001b1565b84620001ed565b602080601f831160018114620002cb5760008415620002945750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000237565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031a57888601518255948401946001909101908401620002f9565b50858210156200035757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61254480620003776000396000f3fe608060405234801561001057600080fd5b506004361061011a5760003560e01c80636c0360eb116100b2578063bd7a6c4111610081578063d7a0ad9011610066578063d7a0ad9014610317578063e985e9c51461032a578063f242432a146103735761011a565b8063bd7a6c41146102e0578063c9823cc6146102f35761011a565b80636c0360eb1461029f57806393cfa682146102a7578063a22cb465146102ba578063a3f091f5146102cd5761011a565b80632a55205a116100ee5780632a55205a146102185780632eb2c2d614610257578063437ecbe91461026c5780634e1273f41461027f5761011a565b8062fdd58e146101a757806301ffc9a7146101cd57806306fdde03146101f05780630e89341c14610205575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101ba6101b5366004611a7e565b610386565b6040519081526020015b60405180910390f35b6101e06101db366004611ad9565b6103bc565b60405190151581526020016101c4565b6101f86103c7565b6040516101c49190611b64565b6101f8610213366004611b77565b610455565b61022b610226366004611b90565b610489565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101c4565b61026a610265366004611d4d565b6104e4565b005b61026a61027a366004611df7565b610688565b61029261028d366004611e2a565b610698565b6040516101c49190611f25565b6101f8610838565b61026a6102b5366004611a7e565b610845565b61026a6102c8366004611f38565b610853565b61026a6102db366004611f74565b6108ea565b61026a6102ee366004611fd5565b6108fc565b60045460055461022b9173ffffffffffffffffffffffffffffffffffffffff169082565b61026a610325366004612049565b610907565b6101e06103383660046120d6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61026a610381366004612109565b610913565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103b682610ab0565b600380546103d49061216e565b80601f01602080910402602001604051908101604052809291908181526020018280546104009061216e565b801561044d5780601f106104225761010080835404028352916020019161044d565b820191906000526020600020905b81548152906001019060200180831161043057829003601f168201915b505050505081565b6060600261046283610b0c565b6040516020016104739291906121dd565b6040516020818303038152906040529050919050565b6040805180820190915260045473ffffffffffffffffffffffffffffffffffffffff1680825260055460208301819052600092839290916103e8906104ce9087612319565b6104d89190612330565b92509250509250929050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610538575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610667576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161019e565b61067385858585610c6c565b610681858585855a86610ed1565b5050505050565b61069383838361105a565b505050565b6060815183511461072b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161019e565b6000835167ffffffffffffffff81111561074757610747611bb2565b604051908082528060200260200182016040528015610770578160200160208202803683370190505b50905060005b8451811015610830576000808683815181106107945761079461236b565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107ea576107ea61236b565b60200260200101518152602001908152602001600020548282815181106108135761081361236b565b6020908102919091010152806108288161239a565b915050610776565b509392505050565b600280546103d49061216e565b61084f82826110f8565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6108f684848484611278565b50505050565b610693838383611320565b6108f6848484846114ec565b3373ffffffffffffffffffffffffffffffffffffffff86161480610967575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6109f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610a96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161019e565b610aa2858585856116c2565b610681858585855a8661179d565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610b0357506001919050565b6103b68261191c565b606081600003610b4f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610b795780610b638161239a565b9150610b729050600a83612330565b9150610b53565b60008167ffffffffffffffff811115610b9457610b94611bb2565b6040519080825280601f01601f191660200182016040528015610bbe576020820181803683370190505b509050815b8515610c6357610bd46001826123d2565b90506000610be3600a88612330565b610bee90600a612319565b610bf890886123d2565b610c039060306123e5565b905060008160f81b905080848481518110610c2057610c2061236b565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610c5a600a89612330565b97505050610bc3565b50949350505050565b8051825114610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161019e565b815160005b81811015610e4b57828181518110610d1c57610d1c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d7657610d7661236b565b602002602001015181526020019081526020016000206000828254610d9b91906123d2565b92505081905550828181518110610db457610db461236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610e0e57610e0e61236b565b602002602001015181526020019081526020016000206000828254610e3391906123fe565b90915550819050610e438161239a565b915050610d02565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610ec2929190612411565b60405180910390a45050505050565b610ef08573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f39959493929190612436565b60206040518083038160008887f1158015610f58573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f7d91906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161019e565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110989084906123d2565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff821661119b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f20524543495049454e545f49535f307830000000000000000000000000000000606482015260840161019e565b6103e881111561122d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f204645455f49535f41424f56455f3130305f50455243454e5400000000000000606482015260840161019e565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155600555565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906112b69084906123fe565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108f660008585855a8661179d565b8151815181146113b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b60005b81811015611466578281815181106113cf576113cf61236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106114295761142961236b565b60200260200101518152602001908152602001600020600082825461144e91906123d2565b9091555081905061145e8161239a565b9150506113b5565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516114de929190612411565b60405180910390a450505050565b815183511461157d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b825160005b818110156116335783818151811061159c5761159c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106115f6576115f661236b565b60200260200101518152602001908152602001600020600082825461161b91906123fe565b9091555081905061162b8161239a565b915050611582565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516116ab929190612411565b60405180910390a461068160008686865a87610ed1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117009084906123d2565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906117439084906123fe565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016114de565b6117bc8573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118059594939291906124be565b60206040518083038160008887f1158015611824573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061184991906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161019e565b60006103b682611961565b6000813f801580159061195a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016119b457506001919050565b6103b68260007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a0b57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103b6565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a7957600080fd5b919050565b60008060408385031215611a9157600080fd5b611a9a83611a55565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611ad657600080fd5b50565b600060208284031215611aeb57600080fd5b813561195a81611aa8565b60005b83811015611b11578181015183820152602001611af9565b50506000910152565b60008151808452611b32816020860160208601611af6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061195a6020830184611b1a565b600060208284031215611b8957600080fd5b5035919050565b60008060408385031215611ba357600080fd5b50508035926020909101359150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c2857611c28611bb2565b604052919050565b600067ffffffffffffffff821115611c4a57611c4a611bb2565b5060051b60200190565b600082601f830112611c6557600080fd5b81356020611c7a611c7583611c30565b611be1565b82815260059290921b84018101918181019086841115611c9957600080fd5b8286015b84811015611cb45780358352918301918301611c9d565b509695505050505050565b600082601f830112611cd057600080fd5b813567ffffffffffffffff811115611cea57611cea611bb2565b611d1b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611be1565b818152846020838601011115611d3057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611d6557600080fd5b611d6e86611a55565b9450611d7c60208701611a55565b9350604086013567ffffffffffffffff80821115611d9957600080fd5b611da589838a01611c54565b94506060880135915080821115611dbb57600080fd5b611dc789838a01611c54565b93506080880135915080821115611ddd57600080fd5b50611dea88828901611cbf565b9150509295509295909350565b600080600060608486031215611e0c57600080fd5b611e1584611a55565b95602085013595506040909401359392505050565b60008060408385031215611e3d57600080fd5b823567ffffffffffffffff80821115611e5557600080fd5b818501915085601f830112611e6957600080fd5b81356020611e79611c7583611c30565b82815260059290921b84018101918181019089841115611e9857600080fd5b948201945b83861015611ebd57611eae86611a55565b82529482019490820190611e9d565b96505086013592505080821115611ed357600080fd5b50611ee085828601611c54565b9150509250929050565b600081518084526020808501945080840160005b83811015611f1a57815187529582019590820190600101611efe565b509495945050505050565b60208152600061195a6020830184611eea565b60008060408385031215611f4b57600080fd5b611f5483611a55565b915060208301358015158114611f6957600080fd5b809150509250929050565b60008060008060808587031215611f8a57600080fd5b611f9385611a55565b93506020850135925060408501359150606085013567ffffffffffffffff811115611fbd57600080fd5b611fc987828801611cbf565b91505092959194509250565b600080600060608486031215611fea57600080fd5b611ff384611a55565b9250602084013567ffffffffffffffff8082111561201057600080fd5b61201c87838801611c54565b9350604086013591508082111561203257600080fd5b5061203f86828701611c54565b9150509250925092565b6000806000806080858703121561205f57600080fd5b61206885611a55565b9350602085013567ffffffffffffffff8082111561208557600080fd5b61209188838901611c54565b945060408701359150808211156120a757600080fd5b6120b388838901611c54565b935060608701359150808211156120c957600080fd5b50611fc987828801611cbf565b600080604083850312156120e957600080fd5b6120f283611a55565b915061210060208401611a55565b90509250929050565b600080600080600060a0868803121561212157600080fd5b61212a86611a55565b945061213860208701611a55565b93506040860135925060608601359150608086013567ffffffffffffffff81111561216257600080fd5b611dea88828901611cbf565b600181811c9082168061218257607f821691505b6020821081036121bb577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516121d3818560208601611af6565b9290920192915050565b600080845481600182811c9150808316806121f957607f831692505b60208084108203612231577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b8180156122455760018114612278576122a5565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122a5565b60008b81526020902060005b8681101561229d5781548b820152908501908301612284565b505084890196505b5050505050506122e16122b882866121c1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176103b6576103b66122ea565b600082612366577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123cb576123cb6122ea565b5060010190565b818103818111156103b6576103b66122ea565b60ff81811683821601908111156103b6576103b66122ea565b808201808211156103b6576103b66122ea565b6040815260006124246040830185611eea565b82810360208401526122e18185611eea565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261246f60a0830186611eea565b82810360608401526124818186611eea565b905082810360808401526124958185611b1a565b98975050505050505050565b6000602082840312156124b357600080fd5b815161195a81611aa8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261250360a0830184611b1a565b97965050505050505056fea2646970667358221220fa058f8fd77930ac8ac2c9a8ce1b170bb29eb7c2128de69c031823e9f139562264736f6c63430008120033"; static readonly abi: ({ inputs: { internalType: string; diff --git a/src/adapter/factories/mocks/ERC2981GlobalMock__factory.js b/src/adapter/factories/mocks/ERC2981GlobalMock__factory.js index 7e979bf..8df1f84 100644 --- a/src/adapter/factories/mocks/ERC2981GlobalMock__factory.js +++ b/src/adapter/factories/mocks/ERC2981GlobalMock__factory.js @@ -529,7 +529,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x60806040523480156200001157600080fd5b50604051620028bb380380620028bb833981016040819052620000349162000146565b81818181600362000046838262000240565b50600262000055828262000240565b5050505050505062000367565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008a57600080fd5b815167ffffffffffffffff80821115620000a857620000a862000062565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000f157620000f162000062565b816040528381526020925086838588010111156200010e57600080fd5b600091505b8382101562000132578582018301518183018401529082019062000113565b600093810190920192909252949350505050565b600080604083850312156200015a57600080fd5b825167ffffffffffffffff808211156200017357600080fd5b620001818683870162000078565b935060208501519150808211156200019857600080fd5b50620001a78582860162000078565b9150509250929050565b600181811c90821680620001c657607f821691505b602082108103620001e757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023b57600081815260208120601f850160051c81016020861015620002165750805b601f850160051c820191505b81811015620002375782815560010162000222565b5050505b505050565b815167ffffffffffffffff8111156200025d576200025d62000062565b62000275816200026e8454620001b1565b84620001ed565b602080601f831160018114620002cb5760008415620002945750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000237565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031a57888601518255948401946001909101908401620002f9565b50858210156200035757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61254480620003776000396000f3fe608060405234801561001057600080fd5b506004361061011a5760003560e01c80636c0360eb116100b2578063bd7a6c4111610081578063d7a0ad9011610066578063d7a0ad9014610317578063e985e9c51461032a578063f242432a146103735761011a565b8063bd7a6c41146102e0578063c9823cc6146102f35761011a565b80636c0360eb1461029f57806393cfa682146102a7578063a22cb465146102ba578063a3f091f5146102cd5761011a565b80632a55205a116100ee5780632a55205a146102185780632eb2c2d614610257578063437ecbe91461026c5780634e1273f41461027f5761011a565b8062fdd58e146101a757806301ffc9a7146101cd57806306fdde03146101f05780630e89341c14610205575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101ba6101b5366004611a7e565b610386565b6040519081526020015b60405180910390f35b6101e06101db366004611ad9565b6103bc565b60405190151581526020016101c4565b6101f86103c7565b6040516101c49190611b64565b6101f8610213366004611b77565b610455565b61022b610226366004611b90565b610489565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101c4565b61026a610265366004611d4d565b6104e4565b005b61026a61027a366004611df7565b610688565b61029261028d366004611e2a565b610698565b6040516101c49190611f25565b6101f8610838565b61026a6102b5366004611a7e565b610845565b61026a6102c8366004611f38565b610853565b61026a6102db366004611f74565b6108ea565b61026a6102ee366004611fd5565b6108fc565b60045460055461022b9173ffffffffffffffffffffffffffffffffffffffff169082565b61026a610325366004612049565b610907565b6101e06103383660046120d6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61026a610381366004612109565b610913565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103b682610ab0565b600380546103d49061216e565b80601f01602080910402602001604051908101604052809291908181526020018280546104009061216e565b801561044d5780601f106104225761010080835404028352916020019161044d565b820191906000526020600020905b81548152906001019060200180831161043057829003601f168201915b505050505081565b6060600261046283610b0c565b6040516020016104739291906121dd565b6040516020818303038152906040529050919050565b6040805180820190915260045473ffffffffffffffffffffffffffffffffffffffff1680825260055460208301819052600092839290916103e8906104ce9087612319565b6104d89190612330565b92509250509250929050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610538575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610667576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161019e565b61067385858585610c6c565b610681858585855a86610ed1565b5050505050565b61069383838361105a565b505050565b6060815183511461072b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161019e565b6000835167ffffffffffffffff81111561074757610747611bb2565b604051908082528060200260200182016040528015610770578160200160208202803683370190505b50905060005b8451811015610830576000808683815181106107945761079461236b565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107ea576107ea61236b565b60200260200101518152602001908152602001600020548282815181106108135761081361236b565b6020908102919091010152806108288161239a565b915050610776565b509392505050565b600280546103d49061216e565b61084f82826110f8565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6108f684848484611278565b50505050565b610693838383611320565b6108f6848484846114ec565b3373ffffffffffffffffffffffffffffffffffffffff86161480610967575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6109f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610a96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161019e565b610aa2858585856116c2565b610681858585855a8661179d565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610b0357506001919050565b6103b68261191c565b606081600003610b4f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610b795780610b638161239a565b9150610b729050600a83612330565b9150610b53565b60008167ffffffffffffffff811115610b9457610b94611bb2565b6040519080825280601f01601f191660200182016040528015610bbe576020820181803683370190505b509050815b8515610c6357610bd46001826123d2565b90506000610be3600a88612330565b610bee90600a612319565b610bf890886123d2565b610c039060306123e5565b905060008160f81b905080848481518110610c2057610c2061236b565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610c5a600a89612330565b97505050610bc3565b50949350505050565b8051825114610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161019e565b815160005b81811015610e4b57828181518110610d1c57610d1c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d7657610d7661236b565b602002602001015181526020019081526020016000206000828254610d9b91906123d2565b92505081905550828181518110610db457610db461236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610e0e57610e0e61236b565b602002602001015181526020019081526020016000206000828254610e3391906123fe565b90915550819050610e438161239a565b915050610d02565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610ec2929190612411565b60405180910390a45050505050565b610ef08573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f39959493929190612436565b60206040518083038160008887f1158015610f58573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f7d91906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161019e565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110989084906123d2565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff821661119b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f20524543495049454e545f49535f307830000000000000000000000000000000606482015260840161019e565b6103e881111561122d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f204645455f49535f41424f56455f3130305f50455243454e5400000000000000606482015260840161019e565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155600555565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906112b69084906123fe565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108f660008585855a8661179d565b8151815181146113b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b60005b81811015611466578281815181106113cf576113cf61236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106114295761142961236b565b60200260200101518152602001908152602001600020600082825461144e91906123d2565b9091555081905061145e8161239a565b9150506113b5565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516114de929190612411565b60405180910390a450505050565b815183511461157d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b825160005b818110156116335783818151811061159c5761159c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106115f6576115f661236b565b60200260200101518152602001908152602001600020600082825461161b91906123fe565b9091555081905061162b8161239a565b915050611582565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516116ab929190612411565b60405180910390a461068160008686865a87610ed1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117009084906123d2565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906117439084906123fe565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016114de565b6117bc8573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118059594939291906124be565b60206040518083038160008887f1158015611824573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061184991906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161019e565b60006103b682611961565b6000813f801580159061195a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016119b457506001919050565b6103b68260007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a0b57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103b6565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a7957600080fd5b919050565b60008060408385031215611a9157600080fd5b611a9a83611a55565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611ad657600080fd5b50565b600060208284031215611aeb57600080fd5b813561195a81611aa8565b60005b83811015611b11578181015183820152602001611af9565b50506000910152565b60008151808452611b32816020860160208601611af6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061195a6020830184611b1a565b600060208284031215611b8957600080fd5b5035919050565b60008060408385031215611ba357600080fd5b50508035926020909101359150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c2857611c28611bb2565b604052919050565b600067ffffffffffffffff821115611c4a57611c4a611bb2565b5060051b60200190565b600082601f830112611c6557600080fd5b81356020611c7a611c7583611c30565b611be1565b82815260059290921b84018101918181019086841115611c9957600080fd5b8286015b84811015611cb45780358352918301918301611c9d565b509695505050505050565b600082601f830112611cd057600080fd5b813567ffffffffffffffff811115611cea57611cea611bb2565b611d1b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611be1565b818152846020838601011115611d3057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611d6557600080fd5b611d6e86611a55565b9450611d7c60208701611a55565b9350604086013567ffffffffffffffff80821115611d9957600080fd5b611da589838a01611c54565b94506060880135915080821115611dbb57600080fd5b611dc789838a01611c54565b93506080880135915080821115611ddd57600080fd5b50611dea88828901611cbf565b9150509295509295909350565b600080600060608486031215611e0c57600080fd5b611e1584611a55565b95602085013595506040909401359392505050565b60008060408385031215611e3d57600080fd5b823567ffffffffffffffff80821115611e5557600080fd5b818501915085601f830112611e6957600080fd5b81356020611e79611c7583611c30565b82815260059290921b84018101918181019089841115611e9857600080fd5b948201945b83861015611ebd57611eae86611a55565b82529482019490820190611e9d565b96505086013592505080821115611ed357600080fd5b50611ee085828601611c54565b9150509250929050565b600081518084526020808501945080840160005b83811015611f1a57815187529582019590820190600101611efe565b509495945050505050565b60208152600061195a6020830184611eea565b60008060408385031215611f4b57600080fd5b611f5483611a55565b915060208301358015158114611f6957600080fd5b809150509250929050565b60008060008060808587031215611f8a57600080fd5b611f9385611a55565b93506020850135925060408501359150606085013567ffffffffffffffff811115611fbd57600080fd5b611fc987828801611cbf565b91505092959194509250565b600080600060608486031215611fea57600080fd5b611ff384611a55565b9250602084013567ffffffffffffffff8082111561201057600080fd5b61201c87838801611c54565b9350604086013591508082111561203257600080fd5b5061203f86828701611c54565b9150509250925092565b6000806000806080858703121561205f57600080fd5b61206885611a55565b9350602085013567ffffffffffffffff8082111561208557600080fd5b61209188838901611c54565b945060408701359150808211156120a757600080fd5b6120b388838901611c54565b935060608701359150808211156120c957600080fd5b50611fc987828801611cbf565b600080604083850312156120e957600080fd5b6120f283611a55565b915061210060208401611a55565b90509250929050565b600080600080600060a0868803121561212157600080fd5b61212a86611a55565b945061213860208701611a55565b93506040860135925060608601359150608086013567ffffffffffffffff81111561216257600080fd5b611dea88828901611cbf565b600181811c9082168061218257607f821691505b6020821081036121bb577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516121d3818560208601611af6565b9290920192915050565b600080845481600182811c9150808316806121f957607f831692505b60208084108203612231577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b8180156122455760018114612278576122a5565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122a5565b60008b81526020902060005b8681101561229d5781548b820152908501908301612284565b505084890196505b5050505050506122e16122b882866121c1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176103b6576103b66122ea565b600082612366577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123cb576123cb6122ea565b5060010190565b818103818111156103b6576103b66122ea565b60ff81811683821601908111156103b6576103b66122ea565b808201808211156103b6576103b66122ea565b6040815260006124246040830185611eea565b82810360208401526122e18185611eea565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261246f60a0830186611eea565b82810360608401526124818186611eea565b905082810360808401526124958185611b1a565b98975050505050505050565b6000602082840312156124b357600080fd5b815161195a81611aa8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261250360a0830184611b1a565b97965050505050505056fea2646970667358221220f87e3e4a17bc764420c06ca9abd70fb8a97acf07693145f4dc8c7e5e997b1a2264736f6c63430008120033"; +const _bytecode = "0x60806040523480156200001157600080fd5b50604051620028bb380380620028bb833981016040819052620000349162000146565b81818181600362000046838262000240565b50600262000055828262000240565b5050505050505062000367565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008a57600080fd5b815167ffffffffffffffff80821115620000a857620000a862000062565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000f157620000f162000062565b816040528381526020925086838588010111156200010e57600080fd5b600091505b8382101562000132578582018301518183018401529082019062000113565b600093810190920192909252949350505050565b600080604083850312156200015a57600080fd5b825167ffffffffffffffff808211156200017357600080fd5b620001818683870162000078565b935060208501519150808211156200019857600080fd5b50620001a78582860162000078565b9150509250929050565b600181811c90821680620001c657607f821691505b602082108103620001e757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023b57600081815260208120601f850160051c81016020861015620002165750805b601f850160051c820191505b81811015620002375782815560010162000222565b5050505b505050565b815167ffffffffffffffff8111156200025d576200025d62000062565b62000275816200026e8454620001b1565b84620001ed565b602080601f831160018114620002cb5760008415620002945750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000237565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031a57888601518255948401946001909101908401620002f9565b50858210156200035757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61254480620003776000396000f3fe608060405234801561001057600080fd5b506004361061011a5760003560e01c80636c0360eb116100b2578063bd7a6c4111610081578063d7a0ad9011610066578063d7a0ad9014610317578063e985e9c51461032a578063f242432a146103735761011a565b8063bd7a6c41146102e0578063c9823cc6146102f35761011a565b80636c0360eb1461029f57806393cfa682146102a7578063a22cb465146102ba578063a3f091f5146102cd5761011a565b80632a55205a116100ee5780632a55205a146102185780632eb2c2d614610257578063437ecbe91461026c5780634e1273f41461027f5761011a565b8062fdd58e146101a757806301ffc9a7146101cd57806306fdde03146101f05780630e89341c14610205575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101ba6101b5366004611a7e565b610386565b6040519081526020015b60405180910390f35b6101e06101db366004611ad9565b6103bc565b60405190151581526020016101c4565b6101f86103c7565b6040516101c49190611b64565b6101f8610213366004611b77565b610455565b61022b610226366004611b90565b610489565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101c4565b61026a610265366004611d4d565b6104e4565b005b61026a61027a366004611df7565b610688565b61029261028d366004611e2a565b610698565b6040516101c49190611f25565b6101f8610838565b61026a6102b5366004611a7e565b610845565b61026a6102c8366004611f38565b610853565b61026a6102db366004611f74565b6108ea565b61026a6102ee366004611fd5565b6108fc565b60045460055461022b9173ffffffffffffffffffffffffffffffffffffffff169082565b61026a610325366004612049565b610907565b6101e06103383660046120d6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61026a610381366004612109565b610913565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103b682610ab0565b600380546103d49061216e565b80601f01602080910402602001604051908101604052809291908181526020018280546104009061216e565b801561044d5780601f106104225761010080835404028352916020019161044d565b820191906000526020600020905b81548152906001019060200180831161043057829003601f168201915b505050505081565b6060600261046283610b0c565b6040516020016104739291906121dd565b6040516020818303038152906040529050919050565b6040805180820190915260045473ffffffffffffffffffffffffffffffffffffffff1680825260055460208301819052600092839290916103e8906104ce9087612319565b6104d89190612330565b92509250509250929050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610538575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610667576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161019e565b61067385858585610c6c565b610681858585855a86610ed1565b5050505050565b61069383838361105a565b505050565b6060815183511461072b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161019e565b6000835167ffffffffffffffff81111561074757610747611bb2565b604051908082528060200260200182016040528015610770578160200160208202803683370190505b50905060005b8451811015610830576000808683815181106107945761079461236b565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107ea576107ea61236b565b60200260200101518152602001908152602001600020548282815181106108135761081361236b565b6020908102919091010152806108288161239a565b915050610776565b509392505050565b600280546103d49061216e565b61084f82826110f8565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6108f684848484611278565b50505050565b610693838383611320565b6108f6848484846114ec565b3373ffffffffffffffffffffffffffffffffffffffff86161480610967575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6109f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610a96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161019e565b610aa2858585856116c2565b610681858585855a8661179d565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610b0357506001919050565b6103b68261191c565b606081600003610b4f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610b795780610b638161239a565b9150610b729050600a83612330565b9150610b53565b60008167ffffffffffffffff811115610b9457610b94611bb2565b6040519080825280601f01601f191660200182016040528015610bbe576020820181803683370190505b509050815b8515610c6357610bd46001826123d2565b90506000610be3600a88612330565b610bee90600a612319565b610bf890886123d2565b610c039060306123e5565b905060008160f81b905080848481518110610c2057610c2061236b565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610c5a600a89612330565b97505050610bc3565b50949350505050565b8051825114610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161019e565b815160005b81811015610e4b57828181518110610d1c57610d1c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d7657610d7661236b565b602002602001015181526020019081526020016000206000828254610d9b91906123d2565b92505081905550828181518110610db457610db461236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610e0e57610e0e61236b565b602002602001015181526020019081526020016000206000828254610e3391906123fe565b90915550819050610e438161239a565b915050610d02565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610ec2929190612411565b60405180910390a45050505050565b610ef08573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f39959493929190612436565b60206040518083038160008887f1158015610f58573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f7d91906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161019e565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110989084906123d2565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff821661119b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f20524543495049454e545f49535f307830000000000000000000000000000000606482015260840161019e565b6103e881111561122d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f204645455f49535f41424f56455f3130305f50455243454e5400000000000000606482015260840161019e565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155600555565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906112b69084906123fe565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108f660008585855a8661179d565b8151815181146113b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b60005b81811015611466578281815181106113cf576113cf61236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106114295761142961236b565b60200260200101518152602001908152602001600020600082825461144e91906123d2565b9091555081905061145e8161239a565b9150506113b5565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516114de929190612411565b60405180910390a450505050565b815183511461157d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b825160005b818110156116335783818151811061159c5761159c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106115f6576115f661236b565b60200260200101518152602001908152602001600020600082825461161b91906123fe565b9091555081905061162b8161239a565b915050611582565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516116ab929190612411565b60405180910390a461068160008686865a87610ed1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117009084906123d2565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906117439084906123fe565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016114de565b6117bc8573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118059594939291906124be565b60206040518083038160008887f1158015611824573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061184991906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161019e565b60006103b682611961565b6000813f801580159061195a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016119b457506001919050565b6103b68260007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a0b57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103b6565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a7957600080fd5b919050565b60008060408385031215611a9157600080fd5b611a9a83611a55565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611ad657600080fd5b50565b600060208284031215611aeb57600080fd5b813561195a81611aa8565b60005b83811015611b11578181015183820152602001611af9565b50506000910152565b60008151808452611b32816020860160208601611af6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061195a6020830184611b1a565b600060208284031215611b8957600080fd5b5035919050565b60008060408385031215611ba357600080fd5b50508035926020909101359150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c2857611c28611bb2565b604052919050565b600067ffffffffffffffff821115611c4a57611c4a611bb2565b5060051b60200190565b600082601f830112611c6557600080fd5b81356020611c7a611c7583611c30565b611be1565b82815260059290921b84018101918181019086841115611c9957600080fd5b8286015b84811015611cb45780358352918301918301611c9d565b509695505050505050565b600082601f830112611cd057600080fd5b813567ffffffffffffffff811115611cea57611cea611bb2565b611d1b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611be1565b818152846020838601011115611d3057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611d6557600080fd5b611d6e86611a55565b9450611d7c60208701611a55565b9350604086013567ffffffffffffffff80821115611d9957600080fd5b611da589838a01611c54565b94506060880135915080821115611dbb57600080fd5b611dc789838a01611c54565b93506080880135915080821115611ddd57600080fd5b50611dea88828901611cbf565b9150509295509295909350565b600080600060608486031215611e0c57600080fd5b611e1584611a55565b95602085013595506040909401359392505050565b60008060408385031215611e3d57600080fd5b823567ffffffffffffffff80821115611e5557600080fd5b818501915085601f830112611e6957600080fd5b81356020611e79611c7583611c30565b82815260059290921b84018101918181019089841115611e9857600080fd5b948201945b83861015611ebd57611eae86611a55565b82529482019490820190611e9d565b96505086013592505080821115611ed357600080fd5b50611ee085828601611c54565b9150509250929050565b600081518084526020808501945080840160005b83811015611f1a57815187529582019590820190600101611efe565b509495945050505050565b60208152600061195a6020830184611eea565b60008060408385031215611f4b57600080fd5b611f5483611a55565b915060208301358015158114611f6957600080fd5b809150509250929050565b60008060008060808587031215611f8a57600080fd5b611f9385611a55565b93506020850135925060408501359150606085013567ffffffffffffffff811115611fbd57600080fd5b611fc987828801611cbf565b91505092959194509250565b600080600060608486031215611fea57600080fd5b611ff384611a55565b9250602084013567ffffffffffffffff8082111561201057600080fd5b61201c87838801611c54565b9350604086013591508082111561203257600080fd5b5061203f86828701611c54565b9150509250925092565b6000806000806080858703121561205f57600080fd5b61206885611a55565b9350602085013567ffffffffffffffff8082111561208557600080fd5b61209188838901611c54565b945060408701359150808211156120a757600080fd5b6120b388838901611c54565b935060608701359150808211156120c957600080fd5b50611fc987828801611cbf565b600080604083850312156120e957600080fd5b6120f283611a55565b915061210060208401611a55565b90509250929050565b600080600080600060a0868803121561212157600080fd5b61212a86611a55565b945061213860208701611a55565b93506040860135925060608601359150608086013567ffffffffffffffff81111561216257600080fd5b611dea88828901611cbf565b600181811c9082168061218257607f821691505b6020821081036121bb577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516121d3818560208601611af6565b9290920192915050565b600080845481600182811c9150808316806121f957607f831692505b60208084108203612231577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b8180156122455760018114612278576122a5565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122a5565b60008b81526020902060005b8681101561229d5781548b820152908501908301612284565b505084890196505b5050505050506122e16122b882866121c1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176103b6576103b66122ea565b600082612366577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123cb576123cb6122ea565b5060010190565b818103818111156103b6576103b66122ea565b60ff81811683821601908111156103b6576103b66122ea565b808201808211156103b6576103b66122ea565b6040815260006124246040830185611eea565b82810360208401526122e18185611eea565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261246f60a0830186611eea565b82810360608401526124818186611eea565b905082810360808401526124958185611b1a565b98975050505050505050565b6000602082840312156124b357600080fd5b815161195a81611aa8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261250360a0830184611b1a565b97965050505050505056fea2646970667358221220fa058f8fd77930ac8ac2c9a8ce1b170bb29eb7c2128de69c031823e9f139562264736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC2981GlobalMock__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/mocks/OwnableMock__factory.d.ts b/src/adapter/factories/mocks/OwnableMock__factory.d.ts index 7a80a54..03d1017 100644 --- a/src/adapter/factories/mocks/OwnableMock__factory.d.ts +++ b/src/adapter/factories/mocks/OwnableMock__factory.d.ts @@ -13,7 +13,7 @@ export declare class OwnableMock__factory extends ContractFactory { }): TransactionRequest; attach(address: string): OwnableMock; connect(signer: Signer): OwnableMock__factory; - static readonly bytecode = "0x60806040526000600155600060025534801561001a57600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610404806100816000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063776e8c30146100515780638da5cb5b1461005b578063aae7aa4b14610087578063f2fde38b1461008f575b600080fd5b6100596100a2565b005b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100596100bc565b61005961009d366004610351565b61017a565b6001600260008282546100b5919061038e565b9091555050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60018060008282546100b5919061038e565b60005473ffffffffffffffffffffffffffffffffffffffff163314610221576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e45520000000000000000000000000000000000000000000000000000606482015260840161015f565b73ffffffffffffffffffffffffffffffffffffffff81166102c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161015f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561036357600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461038757600080fd5b9392505050565b808201808211156103c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291505056fea2646970667358221220caca115c04a288bbb642cca5e5d8c888db00f400a6d9b8060fce873f71e67dd964736f6c63430008120033"; + static readonly bytecode = "0x60806040526000600155600060025534801561001a57600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610404806100816000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063776e8c30146100515780638da5cb5b1461005b578063aae7aa4b14610087578063f2fde38b1461008f575b600080fd5b6100596100a2565b005b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100596100bc565b61005961009d366004610351565b61017a565b6001600260008282546100b5919061038e565b9091555050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60018060008282546100b5919061038e565b60005473ffffffffffffffffffffffffffffffffffffffff163314610221576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e45520000000000000000000000000000000000000000000000000000606482015260840161015f565b73ffffffffffffffffffffffffffffffffffffffff81166102c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161015f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561036357600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461038757600080fd5b9392505050565b808201808211156103c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291505056fea2646970667358221220215243c83440a734bd5320b037685c098161b47d238ce78f571947f111fe261764736f6c63430008120033"; static readonly abi: ({ anonymous: boolean; inputs: { diff --git a/src/adapter/factories/mocks/OwnableMock__factory.js b/src/adapter/factories/mocks/OwnableMock__factory.js index 7495e3c..13a81da 100644 --- a/src/adapter/factories/mocks/OwnableMock__factory.js +++ b/src/adapter/factories/mocks/OwnableMock__factory.js @@ -63,7 +63,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x60806040526000600155600060025534801561001a57600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610404806100816000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063776e8c30146100515780638da5cb5b1461005b578063aae7aa4b14610087578063f2fde38b1461008f575b600080fd5b6100596100a2565b005b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100596100bc565b61005961009d366004610351565b61017a565b6001600260008282546100b5919061038e565b9091555050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60018060008282546100b5919061038e565b60005473ffffffffffffffffffffffffffffffffffffffff163314610221576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e45520000000000000000000000000000000000000000000000000000606482015260840161015f565b73ffffffffffffffffffffffffffffffffffffffff81166102c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161015f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561036357600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461038757600080fd5b9392505050565b808201808211156103c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291505056fea2646970667358221220caca115c04a288bbb642cca5e5d8c888db00f400a6d9b8060fce873f71e67dd964736f6c63430008120033"; +const _bytecode = "0x60806040526000600155600060025534801561001a57600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610404806100816000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063776e8c30146100515780638da5cb5b1461005b578063aae7aa4b14610087578063f2fde38b1461008f575b600080fd5b6100596100a2565b005b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100596100bc565b61005961009d366004610351565b61017a565b6001600260008282546100b5919061038e565b9091555050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60018060008282546100b5919061038e565b60005473ffffffffffffffffffffffffffffffffffffffff163314610221576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e45520000000000000000000000000000000000000000000000000000606482015260840161015f565b73ffffffffffffffffffffffffffffffffffffffff81166102c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161015f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561036357600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461038757600080fd5b9392505050565b808201808211156103c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291505056fea2646970667358221220215243c83440a734bd5320b037685c098161b47d238ce78f571947f111fe261764736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class OwnableMock__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/tokens/ERC1155/ERC1155Meta__factory.d.ts b/src/adapter/factories/tokens/ERC1155/ERC1155Meta__factory.d.ts index c67e422..4dfde68 100644 --- a/src/adapter/factories/tokens/ERC1155/ERC1155Meta__factory.d.ts +++ b/src/adapter/factories/tokens/ERC1155/ERC1155Meta__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155Meta__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC1155Meta; connect(signer: Signer): ERC1155Meta__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50613170806100206000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c8063a3d4926e11610081578063f242432a1161005b578063f242432a1461020e578063f5d4c82014610221578063fa4e12d71461023457600080fd5b8063a3d4926e1461019f578063ce0b514b146101b2578063e985e9c5146101c557600080fd5b80632eb2c2d6116100b25780632eb2c2d6146101575780634e1273f41461016c578063a22cb4651461018c57600080fd5b8062fdd58e146100d857806301ffc9a7146100fe5780632d0335ab14610121575b600080fd5b6100eb6100e6366004612509565b610247565b6040519081526020015b60405180910390f35b61011161010c366004612563565b61027d565b60405190151581526020016100f5565b6100eb61012f366004612580565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61016a610165366004612741565b61031a565b005b61017f61017a3660046127ef565b6104c3565b6040516100f591906128ec565b61016a61019a36600461290d565b610663565b61016a6101ad366004612946565b6106fa565b61016a6101c0366004612a07565b61092c565b6101116101d3366004612a81565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61016a61021c366004612aaf565b610a9a565b61016a61022f366004612b18565b610c37565b610111610242366004612b87565b610d8e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016102d057506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610277565b3373ffffffffffffffffffffffffffffffffffffffff8616148061036e575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166104a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016103f6565b6104ae858585856115d7565b6104bc858585855a8661183c565b5050505050565b60608151835114610556576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016103f6565b6000835167ffffffffffffffff8111156105725761057261259d565b60405190808252806020026020018201604052801561059b578160200160208202803683370190505b50905060005b845181101561065b576000808683815181106105bf576105bf612c07565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061061557610615612c07565b602002602001015181526020019081526020016000205482828151811061063e5761063e612c07565b60209081029190910101528061065381612c65565b9150506105a1565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016103f6565b60606107e060405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b60006108c289857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c60405160200161081e9190612c9d565b604051602081830303815290604052805190602001208c6040516020016108459190612c9d565b604051602081830303815290604052805190602001208c61086757600061086a565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b6040516020818303038152906040526119bb565b90506108d0898989896115d7565b841561091357808060200190518101906108ea9190612dcb565b80945081935050506109048989898986602001518861183c565b61090e8983611c4b565b610921565b610921898989895a8661183c565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff85166109cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016103f6565b6060610a1260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a4a89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c61086757600061086a565b9050610a5889898989611fbe565b8415610a8c5780806020019051810190610a729190612dcb565b8094508193505050610904898989898660200151886120a2565b610921898989895a866120a2565b3373ffffffffffffffffffffffffffffffffffffffff86161480610aee575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016103f6565b73ffffffffffffffffffffffffffffffffffffffff8416610c1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016103f6565b610c2985858585611fbe565b6104bc858585855a866120a2565b6000610cc286837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610c6d576000610c70565b60015b89610c7c576000610c7f565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0016108ae565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610d8657600081806020019051810190610d789190612e25565b9050610d848782611c4b565b505b505050505050565b600080825111610e46576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016103f6565b73ffffffffffffffffffffffffffffffffffffffff8516610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016103f6565b6000610ef483612221565b60f81c905060058110610f89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b60008160ff166005811115610fa057610fa0612e5a565b9050600080808080856005811115610fba57610fba612e5a565b03611047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016103f6565b600185600581111561105b5761105b612e5a565b036111cd5787516061146110f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b6110fc886000612324565b9250611109886020612324565b91508760408151811061111e5761111e612c07565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561117b573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506115cf9650505050505050565b60028560058111156111e1576111e1612e5a565b03611347578751606114611277576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b611282886000612324565b925061128f886020612324565b9150876040815181106112a4576112a4612c07565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001611159565b600385600581111561135b5761135b612e5a565b03611447576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906113b4908c908c90600401612ed3565b602060405180830381865afa1580156113d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b600485600581111561145b5761145b612e5a565b03611547576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906114b4908d908c90600401612f1e565b602060405180830381865afa1580156114d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b949350505050565b8051825114611668576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016103f6565b815160005b818110156117b65782818151811061168757611687612c07565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106116e1576116e1612c07565b6020026020010151815260200190815260200160002060008282546117069190612f37565b9250508190555082818151811061171f5761171f612c07565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061177957611779612c07565b60200260200101518152602001908152602001600020600082825461179e9190612f4a565b909155508190506117ae81612c65565b91505061166d565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161182d929190612f5d565b60405180910390a45050505050565b61185b8573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016118a4959493929190612f82565b60206040518083038160008887f11580156118c3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118e89190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016103f6565b606080838060200190518101906119d29190612fed565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611a0a836041612324565b9050818110801590611a255750611a22826064612f4a565b81105b611ab1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016103f6565b6000611aed86838780519060200120604051602001611ad293929190613024565b60405160208183030381529060405280519060200120612411565b90506000868387604051602001611b069392919061304b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611b41836001612f4a565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611b96856001612f4a565b60405190815260200160405180910390a2611bb389838388610d8e565b611c3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016103f6565b50505050509392505050565b6000611c5a8260600151612221565b60f81c905060028110611cef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016103f6565b60008160ff166002811115611d0657611d06612e5a565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff1615611d3c578660400151611d3e565b335b92506000856002811115611d5457611d54612e5a565b03611e6b578660600151806020019051810190611d719190613082565b90945091503073ffffffffffffffffffffffffffffffffffffffff851603611dc157611d9f88848484611fbe565b611dbc8884845a85604051806020016040528060008152506120a2565b611fb4565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b158015611e4e57600080fd5b505af1158015611e62573d6000803e3d6000fd5b50505050611fb4565b8660600151806020019051810190611e8391906130b0565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015611f04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2891906130cd565b611fb4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016103f6565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611ffc908490612f37565b909155505073ffffffffffffffffffffffffffffffffffffffff83166000908152602081815260408083208584529091528120805483929061203f908490612f4a565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6120c18573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b815260040161210a9594939291906130ea565b60206040518083038160008887f1158015612129573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061214e9190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016103f6565b6000808251116122b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016103f6565b81600183516122c29190612f37565b815181106122d2576122d2612c07565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612331826020612f4a565b835110156123c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016103f6565b6123cc602083612f4a565b929092015192915050565b6000813f801580159061240a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b3060405160200161249e92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016124c793929190613024565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461250657600080fd5b50565b6000806040838503121561251c57600080fd5b8235612527816124e4565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461250657600080fd5b60006020828403121561257557600080fd5b813561240a81612535565b60006020828403121561259257600080fd5b813561240a816124e4565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156126135761261361259d565b604052919050565b600067ffffffffffffffff8211156126355761263561259d565b5060051b60200190565b600082601f83011261265057600080fd5b813560206126656126608361261b565b6125cc565b82815260059290921b8401810191818101908684111561268457600080fd5b8286015b8481101561269f5780358352918301918301612688565b509695505050505050565b600067ffffffffffffffff8211156126c4576126c461259d565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f83011261270157600080fd5b813561270f612660826126aa565b81815284602083860101111561272457600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561275957600080fd5b8535612764816124e4565b94506020860135612774816124e4565b9350604086013567ffffffffffffffff8082111561279157600080fd5b61279d89838a0161263f565b945060608801359150808211156127b357600080fd5b6127bf89838a0161263f565b935060808801359150808211156127d557600080fd5b506127e2888289016126f0565b9150509295509295909350565b6000806040838503121561280257600080fd5b823567ffffffffffffffff8082111561281a57600080fd5b818501915085601f83011261282e57600080fd5b8135602061283e6126608361261b565b82815260059290921b8401810191818101908984111561285d57600080fd5b948201945b83861015612884578535612875816124e4565b82529482019490820190612862565b9650508601359250508082111561289a57600080fd5b506128a78582860161263f565b9150509250929050565b600081518084526020808501945080840160005b838110156128e1578151875295820195908201906001016128c5565b509495945050505050565b60208152600061240a60208301846128b1565b801515811461250657600080fd5b6000806040838503121561292057600080fd5b823561292b816124e4565b9150602083013561293b816128ff565b809150509250929050565b60008060008060008060c0878903121561295f57600080fd5b863561296a816124e4565b9550602087013561297a816124e4565b9450604087013567ffffffffffffffff8082111561299757600080fd5b6129a38a838b0161263f565b955060608901359150808211156129b957600080fd5b6129c58a838b0161263f565b9450608089013591506129d7826128ff565b90925060a088013590808211156129ed57600080fd5b506129fa89828a016126f0565b9150509295509295509295565b60008060008060008060c08789031215612a2057600080fd5b8635612a2b816124e4565b95506020870135612a3b816124e4565b945060408701359350606087013592506080870135612a59816128ff565b915060a087013567ffffffffffffffff811115612a7557600080fd5b6129fa89828a016126f0565b60008060408385031215612a9457600080fd5b8235612a9f816124e4565b9150602083013561293b816124e4565b600080600080600060a08688031215612ac757600080fd5b8535612ad2816124e4565b94506020860135612ae2816124e4565b93506040860135925060608601359150608086013567ffffffffffffffff811115612b0c57600080fd5b6127e2888289016126f0565b600080600080600060a08688031215612b3057600080fd5b8535612b3b816124e4565b94506020860135612b4b816124e4565b93506040860135612b5b816128ff565b92506060860135612b6b816128ff565b9150608086013567ffffffffffffffff811115612b0c57600080fd5b60008060008060808587031215612b9d57600080fd5b8435612ba8816124e4565b935060208501359250604085013567ffffffffffffffff80821115612bcc57600080fd5b612bd8888389016126f0565b93506060870135915080821115612bee57600080fd5b50612bfb878288016126f0565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c9657612c96612c36565b5060010190565b815160009082906020808601845b83811015612cc757815185529382019390820190600101612cab565b50929695505050505050565b60005b83811015612cee578181015183820152602001612cd6565b50506000910152565b600082601f830112612d0857600080fd5b8151612d16612660826126aa565b818152846020838601011115612d2b57600080fd5b6115cf826020830160208701612cd3565b600060808284031215612d4e57600080fd5b6040516080810167ffffffffffffffff8282108183111715612d7257612d7261259d565b81604052829350845183526020850151602084015260408501519150612d97826124e4565b8160408401526060850151915080821115612db157600080fd5b50612dbe85828601612cf7565b6060830152505092915050565b60008060408385031215612dde57600080fd5b825167ffffffffffffffff80821115612df657600080fd5b612e0286838701612d3c565b93506020850151915080821115612e1857600080fd5b506128a785828601612cf7565b600060208284031215612e3757600080fd5b815167ffffffffffffffff811115612e4e57600080fd5b6115cf84828501612d3c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60008151808452612ea1816020860160208601612cd3565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b604081526000612ee66040830185612e89565b8281036020840152612ef88185612e89565b95945050505050565b600060208284031215612f1357600080fd5b815161240a81612535565b8281526040602082015260006115cf6040830184612e89565b8181038181111561027757610277612c36565b8082018082111561027757610277612c36565b604081526000612f7060408301856128b1565b8281036020840152612ef881856128b1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152612fbb60a08301866128b1565b8281036060840152612fcd81866128b1565b90508281036080840152612fe18185612e89565b98975050505050505050565b6000806040838503121561300057600080fd5b825167ffffffffffffffff8082111561301857600080fd5b612e0286838701612cf7565b60008451613036818460208901612cd3565b91909101928352506020820152604001919050565b6000845161305d818460208901612cd3565b82018481528351613075816020808501908801612cd3565b0160200195945050505050565b6000806040838503121561309557600080fd5b82516130a0816124e4565b6020939093015192949293505050565b6000602082840312156130c257600080fd5b815161240a816124e4565b6000602082840312156130df57600080fd5b815161240a816128ff565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261312f60a0830184612e89565b97965050505050505056fea264697066735822122086a3f35157d4900c572b2aa788c7a477ce84e47257fd2a5ad0fa61917c44f41264736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b50613170806100206000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c8063a3d4926e11610081578063f242432a1161005b578063f242432a1461020e578063f5d4c82014610221578063fa4e12d71461023457600080fd5b8063a3d4926e1461019f578063ce0b514b146101b2578063e985e9c5146101c557600080fd5b80632eb2c2d6116100b25780632eb2c2d6146101575780634e1273f41461016c578063a22cb4651461018c57600080fd5b8062fdd58e146100d857806301ffc9a7146100fe5780632d0335ab14610121575b600080fd5b6100eb6100e6366004612509565b610247565b6040519081526020015b60405180910390f35b61011161010c366004612563565b61027d565b60405190151581526020016100f5565b6100eb61012f366004612580565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61016a610165366004612741565b61031a565b005b61017f61017a3660046127ef565b6104c3565b6040516100f591906128ec565b61016a61019a36600461290d565b610663565b61016a6101ad366004612946565b6106fa565b61016a6101c0366004612a07565b61092c565b6101116101d3366004612a81565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61016a61021c366004612aaf565b610a9a565b61016a61022f366004612b18565b610c37565b610111610242366004612b87565b610d8e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016102d057506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610277565b3373ffffffffffffffffffffffffffffffffffffffff8616148061036e575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166104a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016103f6565b6104ae858585856115d7565b6104bc858585855a8661183c565b5050505050565b60608151835114610556576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016103f6565b6000835167ffffffffffffffff8111156105725761057261259d565b60405190808252806020026020018201604052801561059b578160200160208202803683370190505b50905060005b845181101561065b576000808683815181106105bf576105bf612c07565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061061557610615612c07565b602002602001015181526020019081526020016000205482828151811061063e5761063e612c07565b60209081029190910101528061065381612c65565b9150506105a1565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016103f6565b60606107e060405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b60006108c289857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c60405160200161081e9190612c9d565b604051602081830303815290604052805190602001208c6040516020016108459190612c9d565b604051602081830303815290604052805190602001208c61086757600061086a565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b6040516020818303038152906040526119bb565b90506108d0898989896115d7565b841561091357808060200190518101906108ea9190612dcb565b80945081935050506109048989898986602001518861183c565b61090e8983611c4b565b610921565b610921898989895a8661183c565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff85166109cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016103f6565b6060610a1260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a4a89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c61086757600061086a565b9050610a5889898989611fbe565b8415610a8c5780806020019051810190610a729190612dcb565b8094508193505050610904898989898660200151886120a2565b610921898989895a866120a2565b3373ffffffffffffffffffffffffffffffffffffffff86161480610aee575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016103f6565b73ffffffffffffffffffffffffffffffffffffffff8416610c1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016103f6565b610c2985858585611fbe565b6104bc858585855a866120a2565b6000610cc286837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610c6d576000610c70565b60015b89610c7c576000610c7f565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0016108ae565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610d8657600081806020019051810190610d789190612e25565b9050610d848782611c4b565b505b505050505050565b600080825111610e46576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016103f6565b73ffffffffffffffffffffffffffffffffffffffff8516610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016103f6565b6000610ef483612221565b60f81c905060058110610f89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b60008160ff166005811115610fa057610fa0612e5a565b9050600080808080856005811115610fba57610fba612e5a565b03611047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016103f6565b600185600581111561105b5761105b612e5a565b036111cd5787516061146110f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b6110fc886000612324565b9250611109886020612324565b91508760408151811061111e5761111e612c07565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561117b573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506115cf9650505050505050565b60028560058111156111e1576111e1612e5a565b03611347578751606114611277576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b611282886000612324565b925061128f886020612324565b9150876040815181106112a4576112a4612c07565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001611159565b600385600581111561135b5761135b612e5a565b03611447576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906113b4908c908c90600401612ed3565b602060405180830381865afa1580156113d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b600485600581111561145b5761145b612e5a565b03611547576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906114b4908d908c90600401612f1e565b602060405180830381865afa1580156114d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b949350505050565b8051825114611668576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016103f6565b815160005b818110156117b65782818151811061168757611687612c07565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106116e1576116e1612c07565b6020026020010151815260200190815260200160002060008282546117069190612f37565b9250508190555082818151811061171f5761171f612c07565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061177957611779612c07565b60200260200101518152602001908152602001600020600082825461179e9190612f4a565b909155508190506117ae81612c65565b91505061166d565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161182d929190612f5d565b60405180910390a45050505050565b61185b8573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016118a4959493929190612f82565b60206040518083038160008887f11580156118c3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118e89190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016103f6565b606080838060200190518101906119d29190612fed565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611a0a836041612324565b9050818110801590611a255750611a22826064612f4a565b81105b611ab1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016103f6565b6000611aed86838780519060200120604051602001611ad293929190613024565b60405160208183030381529060405280519060200120612411565b90506000868387604051602001611b069392919061304b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611b41836001612f4a565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611b96856001612f4a565b60405190815260200160405180910390a2611bb389838388610d8e565b611c3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016103f6565b50505050509392505050565b6000611c5a8260600151612221565b60f81c905060028110611cef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016103f6565b60008160ff166002811115611d0657611d06612e5a565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff1615611d3c578660400151611d3e565b335b92506000856002811115611d5457611d54612e5a565b03611e6b578660600151806020019051810190611d719190613082565b90945091503073ffffffffffffffffffffffffffffffffffffffff851603611dc157611d9f88848484611fbe565b611dbc8884845a85604051806020016040528060008152506120a2565b611fb4565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b158015611e4e57600080fd5b505af1158015611e62573d6000803e3d6000fd5b50505050611fb4565b8660600151806020019051810190611e8391906130b0565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015611f04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2891906130cd565b611fb4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016103f6565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611ffc908490612f37565b909155505073ffffffffffffffffffffffffffffffffffffffff83166000908152602081815260408083208584529091528120805483929061203f908490612f4a565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6120c18573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b815260040161210a9594939291906130ea565b60206040518083038160008887f1158015612129573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061214e9190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016103f6565b6000808251116122b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016103f6565b81600183516122c29190612f37565b815181106122d2576122d2612c07565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612331826020612f4a565b835110156123c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016103f6565b6123cc602083612f4a565b929092015192915050565b6000813f801580159061240a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b3060405160200161249e92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016124c793929190613024565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461250657600080fd5b50565b6000806040838503121561251c57600080fd5b8235612527816124e4565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461250657600080fd5b60006020828403121561257557600080fd5b813561240a81612535565b60006020828403121561259257600080fd5b813561240a816124e4565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156126135761261361259d565b604052919050565b600067ffffffffffffffff8211156126355761263561259d565b5060051b60200190565b600082601f83011261265057600080fd5b813560206126656126608361261b565b6125cc565b82815260059290921b8401810191818101908684111561268457600080fd5b8286015b8481101561269f5780358352918301918301612688565b509695505050505050565b600067ffffffffffffffff8211156126c4576126c461259d565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f83011261270157600080fd5b813561270f612660826126aa565b81815284602083860101111561272457600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561275957600080fd5b8535612764816124e4565b94506020860135612774816124e4565b9350604086013567ffffffffffffffff8082111561279157600080fd5b61279d89838a0161263f565b945060608801359150808211156127b357600080fd5b6127bf89838a0161263f565b935060808801359150808211156127d557600080fd5b506127e2888289016126f0565b9150509295509295909350565b6000806040838503121561280257600080fd5b823567ffffffffffffffff8082111561281a57600080fd5b818501915085601f83011261282e57600080fd5b8135602061283e6126608361261b565b82815260059290921b8401810191818101908984111561285d57600080fd5b948201945b83861015612884578535612875816124e4565b82529482019490820190612862565b9650508601359250508082111561289a57600080fd5b506128a78582860161263f565b9150509250929050565b600081518084526020808501945080840160005b838110156128e1578151875295820195908201906001016128c5565b509495945050505050565b60208152600061240a60208301846128b1565b801515811461250657600080fd5b6000806040838503121561292057600080fd5b823561292b816124e4565b9150602083013561293b816128ff565b809150509250929050565b60008060008060008060c0878903121561295f57600080fd5b863561296a816124e4565b9550602087013561297a816124e4565b9450604087013567ffffffffffffffff8082111561299757600080fd5b6129a38a838b0161263f565b955060608901359150808211156129b957600080fd5b6129c58a838b0161263f565b9450608089013591506129d7826128ff565b90925060a088013590808211156129ed57600080fd5b506129fa89828a016126f0565b9150509295509295509295565b60008060008060008060c08789031215612a2057600080fd5b8635612a2b816124e4565b95506020870135612a3b816124e4565b945060408701359350606087013592506080870135612a59816128ff565b915060a087013567ffffffffffffffff811115612a7557600080fd5b6129fa89828a016126f0565b60008060408385031215612a9457600080fd5b8235612a9f816124e4565b9150602083013561293b816124e4565b600080600080600060a08688031215612ac757600080fd5b8535612ad2816124e4565b94506020860135612ae2816124e4565b93506040860135925060608601359150608086013567ffffffffffffffff811115612b0c57600080fd5b6127e2888289016126f0565b600080600080600060a08688031215612b3057600080fd5b8535612b3b816124e4565b94506020860135612b4b816124e4565b93506040860135612b5b816128ff565b92506060860135612b6b816128ff565b9150608086013567ffffffffffffffff811115612b0c57600080fd5b60008060008060808587031215612b9d57600080fd5b8435612ba8816124e4565b935060208501359250604085013567ffffffffffffffff80821115612bcc57600080fd5b612bd8888389016126f0565b93506060870135915080821115612bee57600080fd5b50612bfb878288016126f0565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c9657612c96612c36565b5060010190565b815160009082906020808601845b83811015612cc757815185529382019390820190600101612cab565b50929695505050505050565b60005b83811015612cee578181015183820152602001612cd6565b50506000910152565b600082601f830112612d0857600080fd5b8151612d16612660826126aa565b818152846020838601011115612d2b57600080fd5b6115cf826020830160208701612cd3565b600060808284031215612d4e57600080fd5b6040516080810167ffffffffffffffff8282108183111715612d7257612d7261259d565b81604052829350845183526020850151602084015260408501519150612d97826124e4565b8160408401526060850151915080821115612db157600080fd5b50612dbe85828601612cf7565b6060830152505092915050565b60008060408385031215612dde57600080fd5b825167ffffffffffffffff80821115612df657600080fd5b612e0286838701612d3c565b93506020850151915080821115612e1857600080fd5b506128a785828601612cf7565b600060208284031215612e3757600080fd5b815167ffffffffffffffff811115612e4e57600080fd5b6115cf84828501612d3c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60008151808452612ea1816020860160208601612cd3565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b604081526000612ee66040830185612e89565b8281036020840152612ef88185612e89565b95945050505050565b600060208284031215612f1357600080fd5b815161240a81612535565b8281526040602082015260006115cf6040830184612e89565b8181038181111561027757610277612c36565b8082018082111561027757610277612c36565b604081526000612f7060408301856128b1565b8281036020840152612ef881856128b1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152612fbb60a08301866128b1565b8281036060840152612fcd81866128b1565b90508281036080840152612fe18185612e89565b98975050505050505050565b6000806040838503121561300057600080fd5b825167ffffffffffffffff8082111561301857600080fd5b612e0286838701612cf7565b60008451613036818460208901612cd3565b91909101928352506020820152604001919050565b6000845161305d818460208901612cd3565b82018481528351613075816020808501908801612cd3565b0160200195945050505050565b6000806040838503121561309557600080fd5b82516130a0816124e4565b6020939093015192949293505050565b6000602082840312156130c257600080fd5b815161240a816124e4565b6000602082840312156130df57600080fd5b815161240a816128ff565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261312f60a0830184612e89565b97965050505050505056fea26469706673582212203f2d837641f4ab720ec8ebec0164637bd3435cd25c4966fbf64b1a973914da2464736f6c63430008120033"; static readonly abi: ({ anonymous: boolean; inputs: { diff --git a/src/adapter/factories/tokens/ERC1155/ERC1155Meta__factory.js b/src/adapter/factories/tokens/ERC1155/ERC1155Meta__factory.js index bc06ea6..c33f58e 100644 --- a/src/adapter/factories/tokens/ERC1155/ERC1155Meta__factory.js +++ b/src/adapter/factories/tokens/ERC1155/ERC1155Meta__factory.js @@ -459,7 +459,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b50613170806100206000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c8063a3d4926e11610081578063f242432a1161005b578063f242432a1461020e578063f5d4c82014610221578063fa4e12d71461023457600080fd5b8063a3d4926e1461019f578063ce0b514b146101b2578063e985e9c5146101c557600080fd5b80632eb2c2d6116100b25780632eb2c2d6146101575780634e1273f41461016c578063a22cb4651461018c57600080fd5b8062fdd58e146100d857806301ffc9a7146100fe5780632d0335ab14610121575b600080fd5b6100eb6100e6366004612509565b610247565b6040519081526020015b60405180910390f35b61011161010c366004612563565b61027d565b60405190151581526020016100f5565b6100eb61012f366004612580565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61016a610165366004612741565b61031a565b005b61017f61017a3660046127ef565b6104c3565b6040516100f591906128ec565b61016a61019a36600461290d565b610663565b61016a6101ad366004612946565b6106fa565b61016a6101c0366004612a07565b61092c565b6101116101d3366004612a81565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61016a61021c366004612aaf565b610a9a565b61016a61022f366004612b18565b610c37565b610111610242366004612b87565b610d8e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016102d057506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610277565b3373ffffffffffffffffffffffffffffffffffffffff8616148061036e575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166104a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016103f6565b6104ae858585856115d7565b6104bc858585855a8661183c565b5050505050565b60608151835114610556576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016103f6565b6000835167ffffffffffffffff8111156105725761057261259d565b60405190808252806020026020018201604052801561059b578160200160208202803683370190505b50905060005b845181101561065b576000808683815181106105bf576105bf612c07565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061061557610615612c07565b602002602001015181526020019081526020016000205482828151811061063e5761063e612c07565b60209081029190910101528061065381612c65565b9150506105a1565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016103f6565b60606107e060405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b60006108c289857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c60405160200161081e9190612c9d565b604051602081830303815290604052805190602001208c6040516020016108459190612c9d565b604051602081830303815290604052805190602001208c61086757600061086a565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b6040516020818303038152906040526119bb565b90506108d0898989896115d7565b841561091357808060200190518101906108ea9190612dcb565b80945081935050506109048989898986602001518861183c565b61090e8983611c4b565b610921565b610921898989895a8661183c565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff85166109cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016103f6565b6060610a1260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a4a89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c61086757600061086a565b9050610a5889898989611fbe565b8415610a8c5780806020019051810190610a729190612dcb565b8094508193505050610904898989898660200151886120a2565b610921898989895a866120a2565b3373ffffffffffffffffffffffffffffffffffffffff86161480610aee575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016103f6565b73ffffffffffffffffffffffffffffffffffffffff8416610c1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016103f6565b610c2985858585611fbe565b6104bc858585855a866120a2565b6000610cc286837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610c6d576000610c70565b60015b89610c7c576000610c7f565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0016108ae565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610d8657600081806020019051810190610d789190612e25565b9050610d848782611c4b565b505b505050505050565b600080825111610e46576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016103f6565b73ffffffffffffffffffffffffffffffffffffffff8516610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016103f6565b6000610ef483612221565b60f81c905060058110610f89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b60008160ff166005811115610fa057610fa0612e5a565b9050600080808080856005811115610fba57610fba612e5a565b03611047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016103f6565b600185600581111561105b5761105b612e5a565b036111cd5787516061146110f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b6110fc886000612324565b9250611109886020612324565b91508760408151811061111e5761111e612c07565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561117b573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506115cf9650505050505050565b60028560058111156111e1576111e1612e5a565b03611347578751606114611277576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b611282886000612324565b925061128f886020612324565b9150876040815181106112a4576112a4612c07565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001611159565b600385600581111561135b5761135b612e5a565b03611447576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906113b4908c908c90600401612ed3565b602060405180830381865afa1580156113d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b600485600581111561145b5761145b612e5a565b03611547576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906114b4908d908c90600401612f1e565b602060405180830381865afa1580156114d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b949350505050565b8051825114611668576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016103f6565b815160005b818110156117b65782818151811061168757611687612c07565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106116e1576116e1612c07565b6020026020010151815260200190815260200160002060008282546117069190612f37565b9250508190555082818151811061171f5761171f612c07565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061177957611779612c07565b60200260200101518152602001908152602001600020600082825461179e9190612f4a565b909155508190506117ae81612c65565b91505061166d565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161182d929190612f5d565b60405180910390a45050505050565b61185b8573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016118a4959493929190612f82565b60206040518083038160008887f11580156118c3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118e89190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016103f6565b606080838060200190518101906119d29190612fed565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611a0a836041612324565b9050818110801590611a255750611a22826064612f4a565b81105b611ab1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016103f6565b6000611aed86838780519060200120604051602001611ad293929190613024565b60405160208183030381529060405280519060200120612411565b90506000868387604051602001611b069392919061304b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611b41836001612f4a565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611b96856001612f4a565b60405190815260200160405180910390a2611bb389838388610d8e565b611c3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016103f6565b50505050509392505050565b6000611c5a8260600151612221565b60f81c905060028110611cef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016103f6565b60008160ff166002811115611d0657611d06612e5a565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff1615611d3c578660400151611d3e565b335b92506000856002811115611d5457611d54612e5a565b03611e6b578660600151806020019051810190611d719190613082565b90945091503073ffffffffffffffffffffffffffffffffffffffff851603611dc157611d9f88848484611fbe565b611dbc8884845a85604051806020016040528060008152506120a2565b611fb4565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b158015611e4e57600080fd5b505af1158015611e62573d6000803e3d6000fd5b50505050611fb4565b8660600151806020019051810190611e8391906130b0565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015611f04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2891906130cd565b611fb4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016103f6565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611ffc908490612f37565b909155505073ffffffffffffffffffffffffffffffffffffffff83166000908152602081815260408083208584529091528120805483929061203f908490612f4a565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6120c18573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b815260040161210a9594939291906130ea565b60206040518083038160008887f1158015612129573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061214e9190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016103f6565b6000808251116122b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016103f6565b81600183516122c29190612f37565b815181106122d2576122d2612c07565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612331826020612f4a565b835110156123c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016103f6565b6123cc602083612f4a565b929092015192915050565b6000813f801580159061240a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b3060405160200161249e92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016124c793929190613024565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461250657600080fd5b50565b6000806040838503121561251c57600080fd5b8235612527816124e4565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461250657600080fd5b60006020828403121561257557600080fd5b813561240a81612535565b60006020828403121561259257600080fd5b813561240a816124e4565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156126135761261361259d565b604052919050565b600067ffffffffffffffff8211156126355761263561259d565b5060051b60200190565b600082601f83011261265057600080fd5b813560206126656126608361261b565b6125cc565b82815260059290921b8401810191818101908684111561268457600080fd5b8286015b8481101561269f5780358352918301918301612688565b509695505050505050565b600067ffffffffffffffff8211156126c4576126c461259d565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f83011261270157600080fd5b813561270f612660826126aa565b81815284602083860101111561272457600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561275957600080fd5b8535612764816124e4565b94506020860135612774816124e4565b9350604086013567ffffffffffffffff8082111561279157600080fd5b61279d89838a0161263f565b945060608801359150808211156127b357600080fd5b6127bf89838a0161263f565b935060808801359150808211156127d557600080fd5b506127e2888289016126f0565b9150509295509295909350565b6000806040838503121561280257600080fd5b823567ffffffffffffffff8082111561281a57600080fd5b818501915085601f83011261282e57600080fd5b8135602061283e6126608361261b565b82815260059290921b8401810191818101908984111561285d57600080fd5b948201945b83861015612884578535612875816124e4565b82529482019490820190612862565b9650508601359250508082111561289a57600080fd5b506128a78582860161263f565b9150509250929050565b600081518084526020808501945080840160005b838110156128e1578151875295820195908201906001016128c5565b509495945050505050565b60208152600061240a60208301846128b1565b801515811461250657600080fd5b6000806040838503121561292057600080fd5b823561292b816124e4565b9150602083013561293b816128ff565b809150509250929050565b60008060008060008060c0878903121561295f57600080fd5b863561296a816124e4565b9550602087013561297a816124e4565b9450604087013567ffffffffffffffff8082111561299757600080fd5b6129a38a838b0161263f565b955060608901359150808211156129b957600080fd5b6129c58a838b0161263f565b9450608089013591506129d7826128ff565b90925060a088013590808211156129ed57600080fd5b506129fa89828a016126f0565b9150509295509295509295565b60008060008060008060c08789031215612a2057600080fd5b8635612a2b816124e4565b95506020870135612a3b816124e4565b945060408701359350606087013592506080870135612a59816128ff565b915060a087013567ffffffffffffffff811115612a7557600080fd5b6129fa89828a016126f0565b60008060408385031215612a9457600080fd5b8235612a9f816124e4565b9150602083013561293b816124e4565b600080600080600060a08688031215612ac757600080fd5b8535612ad2816124e4565b94506020860135612ae2816124e4565b93506040860135925060608601359150608086013567ffffffffffffffff811115612b0c57600080fd5b6127e2888289016126f0565b600080600080600060a08688031215612b3057600080fd5b8535612b3b816124e4565b94506020860135612b4b816124e4565b93506040860135612b5b816128ff565b92506060860135612b6b816128ff565b9150608086013567ffffffffffffffff811115612b0c57600080fd5b60008060008060808587031215612b9d57600080fd5b8435612ba8816124e4565b935060208501359250604085013567ffffffffffffffff80821115612bcc57600080fd5b612bd8888389016126f0565b93506060870135915080821115612bee57600080fd5b50612bfb878288016126f0565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c9657612c96612c36565b5060010190565b815160009082906020808601845b83811015612cc757815185529382019390820190600101612cab565b50929695505050505050565b60005b83811015612cee578181015183820152602001612cd6565b50506000910152565b600082601f830112612d0857600080fd5b8151612d16612660826126aa565b818152846020838601011115612d2b57600080fd5b6115cf826020830160208701612cd3565b600060808284031215612d4e57600080fd5b6040516080810167ffffffffffffffff8282108183111715612d7257612d7261259d565b81604052829350845183526020850151602084015260408501519150612d97826124e4565b8160408401526060850151915080821115612db157600080fd5b50612dbe85828601612cf7565b6060830152505092915050565b60008060408385031215612dde57600080fd5b825167ffffffffffffffff80821115612df657600080fd5b612e0286838701612d3c565b93506020850151915080821115612e1857600080fd5b506128a785828601612cf7565b600060208284031215612e3757600080fd5b815167ffffffffffffffff811115612e4e57600080fd5b6115cf84828501612d3c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60008151808452612ea1816020860160208601612cd3565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b604081526000612ee66040830185612e89565b8281036020840152612ef88185612e89565b95945050505050565b600060208284031215612f1357600080fd5b815161240a81612535565b8281526040602082015260006115cf6040830184612e89565b8181038181111561027757610277612c36565b8082018082111561027757610277612c36565b604081526000612f7060408301856128b1565b8281036020840152612ef881856128b1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152612fbb60a08301866128b1565b8281036060840152612fcd81866128b1565b90508281036080840152612fe18185612e89565b98975050505050505050565b6000806040838503121561300057600080fd5b825167ffffffffffffffff8082111561301857600080fd5b612e0286838701612cf7565b60008451613036818460208901612cd3565b91909101928352506020820152604001919050565b6000845161305d818460208901612cd3565b82018481528351613075816020808501908801612cd3565b0160200195945050505050565b6000806040838503121561309557600080fd5b82516130a0816124e4565b6020939093015192949293505050565b6000602082840312156130c257600080fd5b815161240a816124e4565b6000602082840312156130df57600080fd5b815161240a816128ff565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261312f60a0830184612e89565b97965050505050505056fea264697066735822122086a3f35157d4900c572b2aa788c7a477ce84e47257fd2a5ad0fa61917c44f41264736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b50613170806100206000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c8063a3d4926e11610081578063f242432a1161005b578063f242432a1461020e578063f5d4c82014610221578063fa4e12d71461023457600080fd5b8063a3d4926e1461019f578063ce0b514b146101b2578063e985e9c5146101c557600080fd5b80632eb2c2d6116100b25780632eb2c2d6146101575780634e1273f41461016c578063a22cb4651461018c57600080fd5b8062fdd58e146100d857806301ffc9a7146100fe5780632d0335ab14610121575b600080fd5b6100eb6100e6366004612509565b610247565b6040519081526020015b60405180910390f35b61011161010c366004612563565b61027d565b60405190151581526020016100f5565b6100eb61012f366004612580565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61016a610165366004612741565b61031a565b005b61017f61017a3660046127ef565b6104c3565b6040516100f591906128ec565b61016a61019a36600461290d565b610663565b61016a6101ad366004612946565b6106fa565b61016a6101c0366004612a07565b61092c565b6101116101d3366004612a81565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61016a61021c366004612aaf565b610a9a565b61016a61022f366004612b18565b610c37565b610111610242366004612b87565b610d8e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016102d057506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610277565b3373ffffffffffffffffffffffffffffffffffffffff8616148061036e575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166104a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016103f6565b6104ae858585856115d7565b6104bc858585855a8661183c565b5050505050565b60608151835114610556576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016103f6565b6000835167ffffffffffffffff8111156105725761057261259d565b60405190808252806020026020018201604052801561059b578160200160208202803683370190505b50905060005b845181101561065b576000808683815181106105bf576105bf612c07565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061061557610615612c07565b602002602001015181526020019081526020016000205482828151811061063e5761063e612c07565b60209081029190910101528061065381612c65565b9150506105a1565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016103f6565b60606107e060405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b60006108c289857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c60405160200161081e9190612c9d565b604051602081830303815290604052805190602001208c6040516020016108459190612c9d565b604051602081830303815290604052805190602001208c61086757600061086a565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b6040516020818303038152906040526119bb565b90506108d0898989896115d7565b841561091357808060200190518101906108ea9190612dcb565b80945081935050506109048989898986602001518861183c565b61090e8983611c4b565b610921565b610921898989895a8661183c565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff85166109cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016103f6565b6060610a1260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a4a89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c61086757600061086a565b9050610a5889898989611fbe565b8415610a8c5780806020019051810190610a729190612dcb565b8094508193505050610904898989898660200151886120a2565b610921898989895a866120a2565b3373ffffffffffffffffffffffffffffffffffffffff86161480610aee575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016103f6565b73ffffffffffffffffffffffffffffffffffffffff8416610c1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016103f6565b610c2985858585611fbe565b6104bc858585855a866120a2565b6000610cc286837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610c6d576000610c70565b60015b89610c7c576000610c7f565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0016108ae565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610d8657600081806020019051810190610d789190612e25565b9050610d848782611c4b565b505b505050505050565b600080825111610e46576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016103f6565b73ffffffffffffffffffffffffffffffffffffffff8516610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016103f6565b6000610ef483612221565b60f81c905060058110610f89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b60008160ff166005811115610fa057610fa0612e5a565b9050600080808080856005811115610fba57610fba612e5a565b03611047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016103f6565b600185600581111561105b5761105b612e5a565b036111cd5787516061146110f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b6110fc886000612324565b9250611109886020612324565b91508760408151811061111e5761111e612c07565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561117b573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506115cf9650505050505050565b60028560058111156111e1576111e1612e5a565b03611347578751606114611277576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b611282886000612324565b925061128f886020612324565b9150876040815181106112a4576112a4612c07565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001611159565b600385600581111561135b5761135b612e5a565b03611447576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906113b4908c908c90600401612ed3565b602060405180830381865afa1580156113d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b600485600581111561145b5761145b612e5a565b03611547576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906114b4908d908c90600401612f1e565b602060405180830381865afa1580156114d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b949350505050565b8051825114611668576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016103f6565b815160005b818110156117b65782818151811061168757611687612c07565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106116e1576116e1612c07565b6020026020010151815260200190815260200160002060008282546117069190612f37565b9250508190555082818151811061171f5761171f612c07565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061177957611779612c07565b60200260200101518152602001908152602001600020600082825461179e9190612f4a565b909155508190506117ae81612c65565b91505061166d565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161182d929190612f5d565b60405180910390a45050505050565b61185b8573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016118a4959493929190612f82565b60206040518083038160008887f11580156118c3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118e89190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016103f6565b606080838060200190518101906119d29190612fed565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611a0a836041612324565b9050818110801590611a255750611a22826064612f4a565b81105b611ab1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016103f6565b6000611aed86838780519060200120604051602001611ad293929190613024565b60405160208183030381529060405280519060200120612411565b90506000868387604051602001611b069392919061304b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611b41836001612f4a565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611b96856001612f4a565b60405190815260200160405180910390a2611bb389838388610d8e565b611c3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016103f6565b50505050509392505050565b6000611c5a8260600151612221565b60f81c905060028110611cef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016103f6565b60008160ff166002811115611d0657611d06612e5a565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff1615611d3c578660400151611d3e565b335b92506000856002811115611d5457611d54612e5a565b03611e6b578660600151806020019051810190611d719190613082565b90945091503073ffffffffffffffffffffffffffffffffffffffff851603611dc157611d9f88848484611fbe565b611dbc8884845a85604051806020016040528060008152506120a2565b611fb4565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b158015611e4e57600080fd5b505af1158015611e62573d6000803e3d6000fd5b50505050611fb4565b8660600151806020019051810190611e8391906130b0565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015611f04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2891906130cd565b611fb4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016103f6565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611ffc908490612f37565b909155505073ffffffffffffffffffffffffffffffffffffffff83166000908152602081815260408083208584529091528120805483929061203f908490612f4a565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6120c18573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b815260040161210a9594939291906130ea565b60206040518083038160008887f1158015612129573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061214e9190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016103f6565b6000808251116122b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016103f6565b81600183516122c29190612f37565b815181106122d2576122d2612c07565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612331826020612f4a565b835110156123c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016103f6565b6123cc602083612f4a565b929092015192915050565b6000813f801580159061240a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b3060405160200161249e92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016124c793929190613024565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461250657600080fd5b50565b6000806040838503121561251c57600080fd5b8235612527816124e4565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461250657600080fd5b60006020828403121561257557600080fd5b813561240a81612535565b60006020828403121561259257600080fd5b813561240a816124e4565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156126135761261361259d565b604052919050565b600067ffffffffffffffff8211156126355761263561259d565b5060051b60200190565b600082601f83011261265057600080fd5b813560206126656126608361261b565b6125cc565b82815260059290921b8401810191818101908684111561268457600080fd5b8286015b8481101561269f5780358352918301918301612688565b509695505050505050565b600067ffffffffffffffff8211156126c4576126c461259d565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f83011261270157600080fd5b813561270f612660826126aa565b81815284602083860101111561272457600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561275957600080fd5b8535612764816124e4565b94506020860135612774816124e4565b9350604086013567ffffffffffffffff8082111561279157600080fd5b61279d89838a0161263f565b945060608801359150808211156127b357600080fd5b6127bf89838a0161263f565b935060808801359150808211156127d557600080fd5b506127e2888289016126f0565b9150509295509295909350565b6000806040838503121561280257600080fd5b823567ffffffffffffffff8082111561281a57600080fd5b818501915085601f83011261282e57600080fd5b8135602061283e6126608361261b565b82815260059290921b8401810191818101908984111561285d57600080fd5b948201945b83861015612884578535612875816124e4565b82529482019490820190612862565b9650508601359250508082111561289a57600080fd5b506128a78582860161263f565b9150509250929050565b600081518084526020808501945080840160005b838110156128e1578151875295820195908201906001016128c5565b509495945050505050565b60208152600061240a60208301846128b1565b801515811461250657600080fd5b6000806040838503121561292057600080fd5b823561292b816124e4565b9150602083013561293b816128ff565b809150509250929050565b60008060008060008060c0878903121561295f57600080fd5b863561296a816124e4565b9550602087013561297a816124e4565b9450604087013567ffffffffffffffff8082111561299757600080fd5b6129a38a838b0161263f565b955060608901359150808211156129b957600080fd5b6129c58a838b0161263f565b9450608089013591506129d7826128ff565b90925060a088013590808211156129ed57600080fd5b506129fa89828a016126f0565b9150509295509295509295565b60008060008060008060c08789031215612a2057600080fd5b8635612a2b816124e4565b95506020870135612a3b816124e4565b945060408701359350606087013592506080870135612a59816128ff565b915060a087013567ffffffffffffffff811115612a7557600080fd5b6129fa89828a016126f0565b60008060408385031215612a9457600080fd5b8235612a9f816124e4565b9150602083013561293b816124e4565b600080600080600060a08688031215612ac757600080fd5b8535612ad2816124e4565b94506020860135612ae2816124e4565b93506040860135925060608601359150608086013567ffffffffffffffff811115612b0c57600080fd5b6127e2888289016126f0565b600080600080600060a08688031215612b3057600080fd5b8535612b3b816124e4565b94506020860135612b4b816124e4565b93506040860135612b5b816128ff565b92506060860135612b6b816128ff565b9150608086013567ffffffffffffffff811115612b0c57600080fd5b60008060008060808587031215612b9d57600080fd5b8435612ba8816124e4565b935060208501359250604085013567ffffffffffffffff80821115612bcc57600080fd5b612bd8888389016126f0565b93506060870135915080821115612bee57600080fd5b50612bfb878288016126f0565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c9657612c96612c36565b5060010190565b815160009082906020808601845b83811015612cc757815185529382019390820190600101612cab565b50929695505050505050565b60005b83811015612cee578181015183820152602001612cd6565b50506000910152565b600082601f830112612d0857600080fd5b8151612d16612660826126aa565b818152846020838601011115612d2b57600080fd5b6115cf826020830160208701612cd3565b600060808284031215612d4e57600080fd5b6040516080810167ffffffffffffffff8282108183111715612d7257612d7261259d565b81604052829350845183526020850151602084015260408501519150612d97826124e4565b8160408401526060850151915080821115612db157600080fd5b50612dbe85828601612cf7565b6060830152505092915050565b60008060408385031215612dde57600080fd5b825167ffffffffffffffff80821115612df657600080fd5b612e0286838701612d3c565b93506020850151915080821115612e1857600080fd5b506128a785828601612cf7565b600060208284031215612e3757600080fd5b815167ffffffffffffffff811115612e4e57600080fd5b6115cf84828501612d3c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60008151808452612ea1816020860160208601612cd3565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b604081526000612ee66040830185612e89565b8281036020840152612ef88185612e89565b95945050505050565b600060208284031215612f1357600080fd5b815161240a81612535565b8281526040602082015260006115cf6040830184612e89565b8181038181111561027757610277612c36565b8082018082111561027757610277612c36565b604081526000612f7060408301856128b1565b8281036020840152612ef881856128b1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152612fbb60a08301866128b1565b8281036060840152612fcd81866128b1565b90508281036080840152612fe18185612e89565b98975050505050505050565b6000806040838503121561300057600080fd5b825167ffffffffffffffff8082111561301857600080fd5b612e0286838701612cf7565b60008451613036818460208901612cd3565b91909101928352506020820152604001919050565b6000845161305d818460208901612cd3565b82018481528351613075816020808501908801612cd3565b0160200195945050505050565b6000806040838503121561309557600080fd5b82516130a0816124e4565b6020939093015192949293505050565b6000602082840312156130c257600080fd5b815161240a816124e4565b6000602082840312156130df57600080fd5b815161240a816128ff565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261312f60a0830184612e89565b97965050505050505056fea26469706673582212203f2d837641f4ab720ec8ebec0164637bd3435cd25c4966fbf64b1a973914da2464736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155Meta__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/tokens/ERC1155/ERC1155Metadata__factory.d.ts b/src/adapter/factories/tokens/ERC1155/ERC1155Metadata__factory.d.ts index 636bc22..70f8017 100644 --- a/src/adapter/factories/tokens/ERC1155/ERC1155Metadata__factory.d.ts +++ b/src/adapter/factories/tokens/ERC1155/ERC1155Metadata__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155Metadata__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC1155Metadata; connect(signer: Signer): ERC1155Metadata__factory; - static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162000ab238038062000ab283398101604081905262000034916200013e565b600162000042838262000238565b50600062000051828262000238565b5050506200035f565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b815167ffffffffffffffff80821115620000a057620000a06200005a565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000e957620000e96200005a565b816040528381526020925086838588010111156200010657600080fd5b600091505b838210156200012a57858201830151818301840152908201906200010b565b600093810190920192909252949350505050565b600080604083850312156200015257600080fd5b825167ffffffffffffffff808211156200016b57600080fd5b620001798683870162000070565b935060208501519150808211156200019057600080fd5b506200019f8582860162000070565b9150509250929050565b600181811c90821680620001be57607f821691505b602082108103620001df57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023357600081815260208120601f850160051c810160208610156200020e5750805b601f850160051c820191505b818110156200022f578281556001016200021a565b5050505b505050565b815167ffffffffffffffff8111156200025557620002556200005a565b6200026d81620002668454620001a9565b84620001e5565b602080601f831160018114620002c357600084156200028c5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556200022f565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031257888601518255948401946001909101908401620002f1565b50858210156200034f57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b610743806200036f6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806301ffc9a71461005157806306fdde03146100795780630e89341c1461008e5780636c0360eb146100a1575b600080fd5b61006461005f366004610377565b6100a9565b60405190151581526020015b60405180910390f35b610081610148565b60405161007091906103e4565b61008161009c366004610435565b6101d6565b61008161020a565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016100fc57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600180546101559061044e565b80601f01602080910402602001604051908101604052809291908181526020018280546101819061044e565b80156101ce5780601f106101a3576101008083540402835291602001916101ce565b820191906000526020600020905b8154815290600101906020018083116101b157829003601f168201915b505050505081565b606060006101e383610217565b6040516020016101f49291906104bd565b6040516020818303038152906040529050919050565b600080546101559061044e565b60608160000361025a57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610284578061026e816105f9565b915061027d9050600a83610631565b915061025e565b60008167ffffffffffffffff81111561029f5761029f61066c565b6040519080825280601f01601f1916602001820160405280156102c9576020820181803683370190505b509050815b851561036e576102df60018261069b565b905060006102ee600a88610631565b6102f990600a6106ae565b610303908861069b565b61030e9060306106c5565b905060008160f81b90508084848151811061032b5761032b6106de565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610365600a89610631565b975050506102ce565b50949350505050565b60006020828403121561038957600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103b957600080fd5b9392505050565b60005b838110156103db5781810151838201526020016103c3565b50506000910152565b60208152600082518060208401526104038160408501602087016103c0565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60006020828403121561044757600080fd5b5035919050565b600181811c9082168061046257607f821691505b60208210810361049b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516104b38185602086016103c0565b9290920192915050565b600080845481600182811c9150808316806104d957607f831692505b60208084108203610511577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015610525576001811461055857610585565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650610585565b60008b81526020902060005b8681101561057d5781548b820152908501908301610564565b505084890196505b5050505050506105c161059882866104a1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361062a5761062a6105ca565b5060010190565b600082610667577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b81810381811115610142576101426105ca565b8082028115828204841417610142576101426105ca565b60ff8181168382160190811115610142576101426105ca565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea2646970667358221220574976883a38ac05f4726a0e0e1c4402fe6a72c391c7bf7eb37846fc680dad3564736f6c63430008120033"; + static readonly bytecode = "0x60806040523480156200001157600080fd5b5060405162000ab238038062000ab283398101604081905262000034916200013e565b600162000042838262000238565b50600062000051828262000238565b5050506200035f565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b815167ffffffffffffffff80821115620000a057620000a06200005a565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000e957620000e96200005a565b816040528381526020925086838588010111156200010657600080fd5b600091505b838210156200012a57858201830151818301840152908201906200010b565b600093810190920192909252949350505050565b600080604083850312156200015257600080fd5b825167ffffffffffffffff808211156200016b57600080fd5b620001798683870162000070565b935060208501519150808211156200019057600080fd5b506200019f8582860162000070565b9150509250929050565b600181811c90821680620001be57607f821691505b602082108103620001df57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023357600081815260208120601f850160051c810160208610156200020e5750805b601f850160051c820191505b818110156200022f578281556001016200021a565b5050505b505050565b815167ffffffffffffffff8111156200025557620002556200005a565b6200026d81620002668454620001a9565b84620001e5565b602080601f831160018114620002c357600084156200028c5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556200022f565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031257888601518255948401946001909101908401620002f1565b50858210156200034f57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b610743806200036f6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806301ffc9a71461005157806306fdde03146100795780630e89341c1461008e5780636c0360eb146100a1575b600080fd5b61006461005f366004610377565b6100a9565b60405190151581526020015b60405180910390f35b610081610148565b60405161007091906103e4565b61008161009c366004610435565b6101d6565b61008161020a565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016100fc57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600180546101559061044e565b80601f01602080910402602001604051908101604052809291908181526020018280546101819061044e565b80156101ce5780601f106101a3576101008083540402835291602001916101ce565b820191906000526020600020905b8154815290600101906020018083116101b157829003601f168201915b505050505081565b606060006101e383610217565b6040516020016101f49291906104bd565b6040516020818303038152906040529050919050565b600080546101559061044e565b60608160000361025a57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610284578061026e816105f9565b915061027d9050600a83610631565b915061025e565b60008167ffffffffffffffff81111561029f5761029f61066c565b6040519080825280601f01601f1916602001820160405280156102c9576020820181803683370190505b509050815b851561036e576102df60018261069b565b905060006102ee600a88610631565b6102f990600a6106ae565b610303908861069b565b61030e9060306106c5565b905060008160f81b90508084848151811061032b5761032b6106de565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610365600a89610631565b975050506102ce565b50949350505050565b60006020828403121561038957600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103b957600080fd5b9392505050565b60005b838110156103db5781810151838201526020016103c3565b50506000910152565b60208152600082518060208401526104038160408501602087016103c0565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60006020828403121561044757600080fd5b5035919050565b600181811c9082168061046257607f821691505b60208210810361049b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516104b38185602086016103c0565b9290920192915050565b600080845481600182811c9150808316806104d957607f831692505b60208084108203610511577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015610525576001811461055857610585565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650610585565b60008b81526020902060005b8681101561057d5781548b820152908501908301610564565b505084890196505b5050505050506105c161059882866104a1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361062a5761062a6105ca565b5060010190565b600082610667577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b81810381811115610142576101426105ca565b8082028115828204841417610142576101426105ca565b60ff8181168382160190811115610142576101426105ca565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea26469706673582212203fb18edc2aeddba110cc433451a0c50dc9d6861311263d57ae896162e7336d3364736f6c63430008120033"; static readonly abi: ({ inputs: { internalType: string; diff --git a/src/adapter/factories/tokens/ERC1155/ERC1155Metadata__factory.js b/src/adapter/factories/tokens/ERC1155/ERC1155Metadata__factory.js index 8d36689..0b59f3c 100644 --- a/src/adapter/factories/tokens/ERC1155/ERC1155Metadata__factory.js +++ b/src/adapter/factories/tokens/ERC1155/ERC1155Metadata__factory.js @@ -103,7 +103,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x60806040523480156200001157600080fd5b5060405162000ab238038062000ab283398101604081905262000034916200013e565b600162000042838262000238565b50600062000051828262000238565b5050506200035f565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b815167ffffffffffffffff80821115620000a057620000a06200005a565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000e957620000e96200005a565b816040528381526020925086838588010111156200010657600080fd5b600091505b838210156200012a57858201830151818301840152908201906200010b565b600093810190920192909252949350505050565b600080604083850312156200015257600080fd5b825167ffffffffffffffff808211156200016b57600080fd5b620001798683870162000070565b935060208501519150808211156200019057600080fd5b506200019f8582860162000070565b9150509250929050565b600181811c90821680620001be57607f821691505b602082108103620001df57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023357600081815260208120601f850160051c810160208610156200020e5750805b601f850160051c820191505b818110156200022f578281556001016200021a565b5050505b505050565b815167ffffffffffffffff8111156200025557620002556200005a565b6200026d81620002668454620001a9565b84620001e5565b602080601f831160018114620002c357600084156200028c5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556200022f565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031257888601518255948401946001909101908401620002f1565b50858210156200034f57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b610743806200036f6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806301ffc9a71461005157806306fdde03146100795780630e89341c1461008e5780636c0360eb146100a1575b600080fd5b61006461005f366004610377565b6100a9565b60405190151581526020015b60405180910390f35b610081610148565b60405161007091906103e4565b61008161009c366004610435565b6101d6565b61008161020a565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016100fc57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600180546101559061044e565b80601f01602080910402602001604051908101604052809291908181526020018280546101819061044e565b80156101ce5780601f106101a3576101008083540402835291602001916101ce565b820191906000526020600020905b8154815290600101906020018083116101b157829003601f168201915b505050505081565b606060006101e383610217565b6040516020016101f49291906104bd565b6040516020818303038152906040529050919050565b600080546101559061044e565b60608160000361025a57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610284578061026e816105f9565b915061027d9050600a83610631565b915061025e565b60008167ffffffffffffffff81111561029f5761029f61066c565b6040519080825280601f01601f1916602001820160405280156102c9576020820181803683370190505b509050815b851561036e576102df60018261069b565b905060006102ee600a88610631565b6102f990600a6106ae565b610303908861069b565b61030e9060306106c5565b905060008160f81b90508084848151811061032b5761032b6106de565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610365600a89610631565b975050506102ce565b50949350505050565b60006020828403121561038957600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103b957600080fd5b9392505050565b60005b838110156103db5781810151838201526020016103c3565b50506000910152565b60208152600082518060208401526104038160408501602087016103c0565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60006020828403121561044757600080fd5b5035919050565b600181811c9082168061046257607f821691505b60208210810361049b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516104b38185602086016103c0565b9290920192915050565b600080845481600182811c9150808316806104d957607f831692505b60208084108203610511577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015610525576001811461055857610585565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650610585565b60008b81526020902060005b8681101561057d5781548b820152908501908301610564565b505084890196505b5050505050506105c161059882866104a1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361062a5761062a6105ca565b5060010190565b600082610667577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b81810381811115610142576101426105ca565b8082028115828204841417610142576101426105ca565b60ff8181168382160190811115610142576101426105ca565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea2646970667358221220574976883a38ac05f4726a0e0e1c4402fe6a72c391c7bf7eb37846fc680dad3564736f6c63430008120033"; +const _bytecode = "0x60806040523480156200001157600080fd5b5060405162000ab238038062000ab283398101604081905262000034916200013e565b600162000042838262000238565b50600062000051828262000238565b5050506200035f565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b815167ffffffffffffffff80821115620000a057620000a06200005a565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000e957620000e96200005a565b816040528381526020925086838588010111156200010657600080fd5b600091505b838210156200012a57858201830151818301840152908201906200010b565b600093810190920192909252949350505050565b600080604083850312156200015257600080fd5b825167ffffffffffffffff808211156200016b57600080fd5b620001798683870162000070565b935060208501519150808211156200019057600080fd5b506200019f8582860162000070565b9150509250929050565b600181811c90821680620001be57607f821691505b602082108103620001df57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023357600081815260208120601f850160051c810160208610156200020e5750805b601f850160051c820191505b818110156200022f578281556001016200021a565b5050505b505050565b815167ffffffffffffffff8111156200025557620002556200005a565b6200026d81620002668454620001a9565b84620001e5565b602080601f831160018114620002c357600084156200028c5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556200022f565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031257888601518255948401946001909101908401620002f1565b50858210156200034f57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b610743806200036f6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806301ffc9a71461005157806306fdde03146100795780630e89341c1461008e5780636c0360eb146100a1575b600080fd5b61006461005f366004610377565b6100a9565b60405190151581526020015b60405180910390f35b610081610148565b60405161007091906103e4565b61008161009c366004610435565b6101d6565b61008161020a565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016100fc57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600180546101559061044e565b80601f01602080910402602001604051908101604052809291908181526020018280546101819061044e565b80156101ce5780601f106101a3576101008083540402835291602001916101ce565b820191906000526020600020905b8154815290600101906020018083116101b157829003601f168201915b505050505081565b606060006101e383610217565b6040516020016101f49291906104bd565b6040516020818303038152906040529050919050565b600080546101559061044e565b60608160000361025a57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610284578061026e816105f9565b915061027d9050600a83610631565b915061025e565b60008167ffffffffffffffff81111561029f5761029f61066c565b6040519080825280601f01601f1916602001820160405280156102c9576020820181803683370190505b509050815b851561036e576102df60018261069b565b905060006102ee600a88610631565b6102f990600a6106ae565b610303908861069b565b61030e9060306106c5565b905060008160f81b90508084848151811061032b5761032b6106de565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610365600a89610631565b975050506102ce565b50949350505050565b60006020828403121561038957600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103b957600080fd5b9392505050565b60005b838110156103db5781810151838201526020016103c3565b50506000910152565b60208152600082518060208401526104038160408501602087016103c0565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60006020828403121561044757600080fd5b5035919050565b600181811c9082168061046257607f821691505b60208210810361049b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516104b38185602086016103c0565b9290920192915050565b600080845481600182811c9150808316806104d957607f831692505b60208084108203610511577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015610525576001811461055857610585565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650610585565b60008b81526020902060005b8681101561057d5781548b820152908501908301610564565b505084890196505b5050505050506105c161059882866104a1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361062a5761062a6105ca565b5060010190565b600082610667577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b81810381811115610142576101426105ca565b8082028115828204841417610142576101426105ca565b60ff8181168382160190811115610142576101426105ca565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea26469706673582212203fb18edc2aeddba110cc433451a0c50dc9d6861311263d57ae896162e7336d3364736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155Metadata__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/tokens/ERC1155/ERC1155MintBurn__factory.d.ts b/src/adapter/factories/tokens/ERC1155/ERC1155MintBurn__factory.d.ts index 94d25b3..55cfe60 100644 --- a/src/adapter/factories/tokens/ERC1155/ERC1155MintBurn__factory.d.ts +++ b/src/adapter/factories/tokens/ERC1155/ERC1155MintBurn__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155MintBurn__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC1155MintBurn; connect(signer: Signer): ERC1155MintBurn__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122050c1c6eecd80705a863476fb3bb2035b133c08e8edd998f840e9204441a8752564736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122060f17d51b05466f91440e7af9c11fed2abdf67c881d6d642b6a10f5d3f6db1b764736f6c63430008120033"; static readonly abi: ({ anonymous: boolean; inputs: { diff --git a/src/adapter/factories/tokens/ERC1155/ERC1155MintBurn__factory.js b/src/adapter/factories/tokens/ERC1155/ERC1155MintBurn__factory.js index aaabc9a..b9cf4ae 100644 --- a/src/adapter/factories/tokens/ERC1155/ERC1155MintBurn__factory.js +++ b/src/adapter/factories/tokens/ERC1155/ERC1155MintBurn__factory.js @@ -278,7 +278,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122050c1c6eecd80705a863476fb3bb2035b133c08e8edd998f840e9204441a8752564736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122060f17d51b05466f91440e7af9c11fed2abdf67c881d6d642b6a10f5d3f6db1b764736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155MintBurn__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/tokens/ERC1155/ERC1155__factory.d.ts b/src/adapter/factories/tokens/ERC1155/ERC1155__factory.d.ts index d15c3e0..ee01e04 100644 --- a/src/adapter/factories/tokens/ERC1155/ERC1155__factory.d.ts +++ b/src/adapter/factories/tokens/ERC1155/ERC1155__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC1155; connect(signer: Signer): ERC1155__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122040a1c6c05ac4bbe8b32151562985adbf53e897a07afb7ec6813a935a60027d3664736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122022132ab70f1f426bc8000de5d7175d05428dd29b7b476afc03e31a9029f2bfee64736f6c63430008120033"; static readonly abi: ({ anonymous: boolean; inputs: { diff --git a/src/adapter/factories/tokens/ERC1155/ERC1155__factory.js b/src/adapter/factories/tokens/ERC1155/ERC1155__factory.js index 862576b..2b4d63e 100644 --- a/src/adapter/factories/tokens/ERC1155/ERC1155__factory.js +++ b/src/adapter/factories/tokens/ERC1155/ERC1155__factory.js @@ -278,7 +278,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122040a1c6c05ac4bbe8b32151562985adbf53e897a07afb7ec6813a935a60027d3664736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122022132ab70f1f426bc8000de5d7175d05428dd29b7b476afc03e31a9029f2bfee64736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance__factory.d.ts b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance__factory.d.ts index 2d9a749..43f86dd 100644 --- a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance__factory.d.ts +++ b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155MetaPackedBalance__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC1155MetaPackedBalance; connect(signer: Signer): ERC1155MetaPackedBalance__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50613a73806100206000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c8063ce0b514b1161008c578063eaec5f8111610066578063eaec5f811461024c578063f242432a1461025f578063f5d4c82014610272578063fa4e12d71461028557600080fd5b8063ce0b514b146101c8578063db90e83c146101db578063e985e9c51461020357600080fd5b80632eb2c2d6116100c85780632eb2c2d61461016d5780634e1273f414610182578063a22cb465146101a2578063a3d4926e146101b557600080fd5b8062fdd58e146100ee57806301ffc9a7146101145780632d0335ab14610137575b600080fd5b6101016100fc366004612c37565b610298565b6040519081526020015b60405180910390f35b610127610122366004612c91565b6102ef565b604051901515815260200161010b565b610101610145366004612cae565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61018061017b366004612e6f565b61038c565b005b610195610190366004612f1d565b610535565b60405161010b919061301a565b6101806101b036600461303b565b61082f565b6101806101c3366004613074565b6108c6565b6101806101d6366004613135565b610b1e565b6101ee6101e93660046131af565b610c8e565b6040805192835260208301919091520161010b565b6101276102113660046131c8565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61010161025a3660046131f6565b610cc8565b61018061026d366004613218565b610cf6565b610180610280366004613281565b610e93565b6101276102933660046132f0565b610fea565b60008060006102a684610c8e565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506102e49082610cc8565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161034257506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102e9565b3373ffffffffffffffffffffffffffffffffffffffff861614806103e0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610471576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8416610514576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610468565b61052085858585611833565b61052e858585855a86611c96565b5050505050565b815181516060919081146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610468565b6000806105f1856000815181106105e4576105e4613370565b6020026020010151610c8e565b9150915060008060008860008151811061060d5761060d613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561068357610683612ccb565b6040519080825280602002602001820160405280156106ac578160200160208202803683370190505b5090506106b98385610cc8565b816000815181106106cc576106cc613370565b602090810291909101015260015b86811015610822576106f78982815181106105e4576105e4613370565b90965094508286141580610775575089818151811061071857610718613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361074491906133ce565b8151811061075457610754613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156107e9576000808b838151811061078f5761078f613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6107f38486610cc8565b82828151811061080557610805613370565b60209081029190910101528061081a816133e1565b9150506106da565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661098f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a401610468565b60606109d260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610ab489857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610a109190613419565b604051602081830303815290604052805190602001208c604051602001610a379190613419565b604051602081830303815290604052805190602001208c610a59576000610a5c565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e3b565b9050610ac289898989611833565b8415610b055780806020019051810190610adc9190613547565b8094508193505050610af689898989866020015188611c96565b610b0089836120cd565b610b13565b610b13898989895a86611c96565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8516610bc357604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e546064820152608401610468565b6060610c0660405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3e89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a59576000610a5c565b9050610c4c89898989612440565b8415610c805780806020019051810190610c669190613547565b8094508193505050610af6898989898660200151886124b8565b610b13898989895a866124b8565b600080610c9e60206101006135d0565b610ca890846135d0565b9150610cb760206101006135d0565b610cc190846135e4565b9050915091565b600080610cdb60016401000000006133ce565b90506000610cea8460206135f8565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610d4a575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610dd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610468565b73ffffffffffffffffffffffffffffffffffffffff8416610e79576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610468565b610e8585858585612440565b61052e858585855a866124b8565b6000610f1e86837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610ec9576000610ecc565b60015b89610ed8576000610edb565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610aa0565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610fe257600081806020019051810190610fd4919061360f565b9050610fe087826120cd565b505b505050505050565b6000808251116110a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a401610468565b73ffffffffffffffffffffffffffffffffffffffff8516611145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e4552000000000000000000000000006064820152608401610468565b60006111508361265d565b60f81c9050600581106111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b60008160ff1660058111156111fc576111fc613644565b905060008080808085600581111561121657611216613644565b036112a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e4154555245000000000000000000006064820152608401610468565b60018560058111156112b7576112b7613644565b0361142957875160611461134d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b611358886000612760565b9250611365886020612760565b91508760408151811061137a5761137a613370565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156113d7573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061182b9650505050505050565b600285600581111561143d5761143d613644565b036115a35787516061146114d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b6114de886000612760565b92506114eb886020612760565b91508760408151811061150057611500613370565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016113b5565b60038560058111156115b7576115b7613644565b036116a3576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611610908c908c906004016136bd565b602060405180830381865afa15801561162d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b60048560058111156116b7576116b7613644565b036117a3576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611710908d908c90600401613708565b602060405180830381865afa15801561172d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b949350505050565b8151815181146118eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610468565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156119275750600081115b15611b2757600080611945856000815181106105e4576105e4613370565b73ffffffffffffffffffffffffffffffffffffffff89166000908152602081815260408083208584529091528120548751939550919350916119a3919084908890859061199457611994613370565b60200260200101516001612813565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320878452909152812054875192935090916119ff91908590899085906119f0576119f0613370565b60200260200101516000612813565b90508360015b86811015611ad557611a228982815181106105e4576105e4613370565b9096509450818614611a915773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611aa884868a848151811061199457611994613370565b9350611ac183868a84815181106119f0576119f0613370565b925080611acd816133e1565b915050611a05565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611c11565b60005b81811015611c0f57828181518110611b4457611b44613370565b6020026020010151611b6f87868481518110611b6257611b62613370565b6020026020010151610298565b1015611bfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610468565b80611c07816133e1565b915050611b2a565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611c87929190613721565b60405180910390a45050505050565b611cb58573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611cfe959493929190613746565b60206040518083038160008887f1158015611d1d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d4291906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610468565b60608083806020019051810190611e5291906137b1565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e8a836041612760565b9050818110801590611ea55750611ea28260646137e8565b81105b611f31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e4345000000006064820152608401610468565b6000611f6d86838780519060200120604051602001611f52939291906137fb565b60405160208183030381529060405280519060200120612ab8565b90506000868387604051602001611f8693929190613822565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611fc18360016137e8565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf596120168560016137e8565b60405190815260200160405180910390a261203389838388610fea565b6120c157604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e41545552456064820152608401610468565b50505050509392505050565b60006120dc826060015161265d565b60f81c905060028110612171576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e00000000006064820152608401610468565b60008160ff16600281111561218857612188613644565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156121be5786604001516121c0565b335b925060008560028111156121d6576121d6613644565b036122ed5786606001518060200190518101906121f39190613859565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036122435761222188848484612440565b61223e8884845a85604051806020016040528060008152506124b8565b612436565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156122d057600080fd5b505af11580156122e4573d6000803e3d6000fd5b50505050612436565b86606001518060200190518101906123059190613887565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612386573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123aa91906138a4565b612436576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c4544006064820152608401610468565b5050505050505050565b61244d8483836001612b8b565b61245a8383836000612b8b565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6124d78573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016125209594939291906138c1565b60206040518083038160008887f115801561253f573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061256491906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610468565b6000808251116126ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f52455155495245440000000000000000006064820152608401610468565b81600183516126fe91906133ce565b8151811061270e5761270e613370565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b600061276d8260206137e8565b835110156127fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f5245515549524544000000006064820152608401610468565b6128086020836137e8565b929092015192915050565b6000806128218560206135f8565b9050600061283560016401000000006133ce565b9050600084600181111561284b5761284b613644565b0361290a5761285c85831b886137e8565b925061286a60206002613a31565b6128788689851c84166137e8565b10612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610468565b612a74565b600184600181111561291e5761291e613644565b036129c65761292f85831b886133ce565b925084818389901c161015612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610468565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610468565b5050949350505050565b6000813f8015801590612ab157507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612b4592919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612b6e939291906137fb565b604051602081830303815290604052805190602001209050919050565b600080612b9785610c8e565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150612bd790828686612813565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b73ffffffffffffffffffffffffffffffffffffffff81168114612c3457600080fd5b50565b60008060408385031215612c4a57600080fd5b8235612c5581612c12565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612c3457600080fd5b600060208284031215612ca357600080fd5b8135612ab181612c63565b600060208284031215612cc057600080fd5b8135612ab181612c12565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612d4157612d41612ccb565b604052919050565b600067ffffffffffffffff821115612d6357612d63612ccb565b5060051b60200190565b600082601f830112612d7e57600080fd5b81356020612d93612d8e83612d49565b612cfa565b82815260059290921b84018101918181019086841115612db257600080fd5b8286015b84811015612dcd5780358352918301918301612db6565b509695505050505050565b600067ffffffffffffffff821115612df257612df2612ccb565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f830112612e2f57600080fd5b8135612e3d612d8e82612dd8565b818152846020838601011115612e5257600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215612e8757600080fd5b8535612e9281612c12565b94506020860135612ea281612c12565b9350604086013567ffffffffffffffff80821115612ebf57600080fd5b612ecb89838a01612d6d565b94506060880135915080821115612ee157600080fd5b612eed89838a01612d6d565b93506080880135915080821115612f0357600080fd5b50612f1088828901612e1e565b9150509295509295909350565b60008060408385031215612f3057600080fd5b823567ffffffffffffffff80821115612f4857600080fd5b818501915085601f830112612f5c57600080fd5b81356020612f6c612d8e83612d49565b82815260059290921b84018101918181019089841115612f8b57600080fd5b948201945b83861015612fb2578535612fa381612c12565b82529482019490820190612f90565b96505086013592505080821115612fc857600080fd5b50612fd585828601612d6d565b9150509250929050565b600081518084526020808501945080840160005b8381101561300f57815187529582019590820190600101612ff3565b509495945050505050565b602081526000612ab16020830184612fdf565b8015158114612c3457600080fd5b6000806040838503121561304e57600080fd5b823561305981612c12565b915060208301356130698161302d565b809150509250929050565b60008060008060008060c0878903121561308d57600080fd5b863561309881612c12565b955060208701356130a881612c12565b9450604087013567ffffffffffffffff808211156130c557600080fd5b6130d18a838b01612d6d565b955060608901359150808211156130e757600080fd5b6130f38a838b01612d6d565b9450608089013591506131058261302d565b90925060a0880135908082111561311b57600080fd5b5061312889828a01612e1e565b9150509295509295509295565b60008060008060008060c0878903121561314e57600080fd5b863561315981612c12565b9550602087013561316981612c12565b9450604087013593506060870135925060808701356131878161302d565b915060a087013567ffffffffffffffff8111156131a357600080fd5b61312889828a01612e1e565b6000602082840312156131c157600080fd5b5035919050565b600080604083850312156131db57600080fd5b82356131e681612c12565b9150602083013561306981612c12565b6000806040838503121561320957600080fd5b50508035926020909101359150565b600080600080600060a0868803121561323057600080fd5b853561323b81612c12565b9450602086013561324b81612c12565b93506040860135925060608601359150608086013567ffffffffffffffff81111561327557600080fd5b612f1088828901612e1e565b600080600080600060a0868803121561329957600080fd5b85356132a481612c12565b945060208601356132b481612c12565b935060408601356132c48161302d565b925060608601356132d48161302d565b9150608086013567ffffffffffffffff81111561327557600080fd5b6000806000806080858703121561330657600080fd5b843561331181612c12565b935060208501359250604085013567ffffffffffffffff8082111561333557600080fd5b61334188838901612e1e565b9350606087013591508082111561335757600080fd5b5061336487828801612e1e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156102e9576102e961339f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036134125761341261339f565b5060010190565b815160009082906020808601845b8381101561344357815185529382019390820190600101613427565b50929695505050505050565b60005b8381101561346a578181015183820152602001613452565b50506000910152565b600082601f83011261348457600080fd5b8151613492612d8e82612dd8565b8181528460208386010111156134a757600080fd5b61182b82602083016020870161344f565b6000608082840312156134ca57600080fd5b6040516080810167ffffffffffffffff82821081831117156134ee576134ee612ccb565b8160405282935084518352602085015160208401526040850151915061351382612c12565b816040840152606085015191508082111561352d57600080fd5b5061353a85828601613473565b6060830152505092915050565b6000806040838503121561355a57600080fd5b825167ffffffffffffffff8082111561357257600080fd5b61357e868387016134b8565b9350602085015191508082111561359457600080fd5b50612fd585828601613473565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826135df576135df6135a1565b500490565b6000826135f3576135f36135a1565b500690565b80820281158282048414176102e9576102e961339f565b60006020828403121561362157600080fd5b815167ffffffffffffffff81111561363857600080fd5b61182b848285016134b8565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000815180845261368b81602086016020860161344f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6040815260006136d06040830185613673565b82810360208401526136e28185613673565b95945050505050565b6000602082840312156136fd57600080fd5b8151612ab181612c63565b82815260406020820152600061182b6040830184613673565b6040815260006137346040830185612fdf565b82810360208401526136e28185612fdf565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261377f60a0830186612fdf565b82810360608401526137918186612fdf565b905082810360808401526137a58185613673565b98975050505050505050565b600080604083850312156137c457600080fd5b825167ffffffffffffffff808211156137dc57600080fd5b61357e86838701613473565b808201808211156102e9576102e961339f565b6000845161380d81846020890161344f565b91909101928352506020820152604001919050565b6000845161383481846020890161344f565b8201848152835161384c81602080850190880161344f565b0160200195945050505050565b6000806040838503121561386c57600080fd5b825161387781612c12565b6020939093015192949293505050565b60006020828403121561389957600080fd5b8151612ab181612c12565b6000602082840312156138b657600080fd5b8151612ab18161302d565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261390660a0830184613673565b979650505050505050565b600181815b8085111561396a57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156139505761395061339f565b8085161561395d57918102915b93841c9390800290613916565b509250929050565b600082613981575060016102e9565b8161398e575060006102e9565b81600181146139a457600281146139ae576139ca565b60019150506102e9565b60ff8411156139bf576139bf61339f565b50506001821b6102e9565b5060208310610133831016604e8410600b84101617156139ed575081810a6102e9565b6139f78383613911565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115613a2957613a2961339f565b029392505050565b6000612ab1838361397256fea264697066735822122098715153ff3f6e26d21adb8d6266df69c9a6c72e3392cd72e1a68e86932d315b64736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b50613a73806100206000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c8063ce0b514b1161008c578063eaec5f8111610066578063eaec5f811461024c578063f242432a1461025f578063f5d4c82014610272578063fa4e12d71461028557600080fd5b8063ce0b514b146101c8578063db90e83c146101db578063e985e9c51461020357600080fd5b80632eb2c2d6116100c85780632eb2c2d61461016d5780634e1273f414610182578063a22cb465146101a2578063a3d4926e146101b557600080fd5b8062fdd58e146100ee57806301ffc9a7146101145780632d0335ab14610137575b600080fd5b6101016100fc366004612c37565b610298565b6040519081526020015b60405180910390f35b610127610122366004612c91565b6102ef565b604051901515815260200161010b565b610101610145366004612cae565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61018061017b366004612e6f565b61038c565b005b610195610190366004612f1d565b610535565b60405161010b919061301a565b6101806101b036600461303b565b61082f565b6101806101c3366004613074565b6108c6565b6101806101d6366004613135565b610b1e565b6101ee6101e93660046131af565b610c8e565b6040805192835260208301919091520161010b565b6101276102113660046131c8565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61010161025a3660046131f6565b610cc8565b61018061026d366004613218565b610cf6565b610180610280366004613281565b610e93565b6101276102933660046132f0565b610fea565b60008060006102a684610c8e565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506102e49082610cc8565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161034257506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102e9565b3373ffffffffffffffffffffffffffffffffffffffff861614806103e0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610471576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8416610514576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610468565b61052085858585611833565b61052e858585855a86611c96565b5050505050565b815181516060919081146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610468565b6000806105f1856000815181106105e4576105e4613370565b6020026020010151610c8e565b9150915060008060008860008151811061060d5761060d613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561068357610683612ccb565b6040519080825280602002602001820160405280156106ac578160200160208202803683370190505b5090506106b98385610cc8565b816000815181106106cc576106cc613370565b602090810291909101015260015b86811015610822576106f78982815181106105e4576105e4613370565b90965094508286141580610775575089818151811061071857610718613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361074491906133ce565b8151811061075457610754613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156107e9576000808b838151811061078f5761078f613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6107f38486610cc8565b82828151811061080557610805613370565b60209081029190910101528061081a816133e1565b9150506106da565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661098f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a401610468565b60606109d260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610ab489857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610a109190613419565b604051602081830303815290604052805190602001208c604051602001610a379190613419565b604051602081830303815290604052805190602001208c610a59576000610a5c565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e3b565b9050610ac289898989611833565b8415610b055780806020019051810190610adc9190613547565b8094508193505050610af689898989866020015188611c96565b610b0089836120cd565b610b13565b610b13898989895a86611c96565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8516610bc357604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e546064820152608401610468565b6060610c0660405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3e89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a59576000610a5c565b9050610c4c89898989612440565b8415610c805780806020019051810190610c669190613547565b8094508193505050610af6898989898660200151886124b8565b610b13898989895a866124b8565b600080610c9e60206101006135d0565b610ca890846135d0565b9150610cb760206101006135d0565b610cc190846135e4565b9050915091565b600080610cdb60016401000000006133ce565b90506000610cea8460206135f8565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610d4a575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610dd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610468565b73ffffffffffffffffffffffffffffffffffffffff8416610e79576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610468565b610e8585858585612440565b61052e858585855a866124b8565b6000610f1e86837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610ec9576000610ecc565b60015b89610ed8576000610edb565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610aa0565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610fe257600081806020019051810190610fd4919061360f565b9050610fe087826120cd565b505b505050505050565b6000808251116110a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a401610468565b73ffffffffffffffffffffffffffffffffffffffff8516611145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e4552000000000000000000000000006064820152608401610468565b60006111508361265d565b60f81c9050600581106111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b60008160ff1660058111156111fc576111fc613644565b905060008080808085600581111561121657611216613644565b036112a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e4154555245000000000000000000006064820152608401610468565b60018560058111156112b7576112b7613644565b0361142957875160611461134d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b611358886000612760565b9250611365886020612760565b91508760408151811061137a5761137a613370565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156113d7573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061182b9650505050505050565b600285600581111561143d5761143d613644565b036115a35787516061146114d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b6114de886000612760565b92506114eb886020612760565b91508760408151811061150057611500613370565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016113b5565b60038560058111156115b7576115b7613644565b036116a3576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611610908c908c906004016136bd565b602060405180830381865afa15801561162d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b60048560058111156116b7576116b7613644565b036117a3576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611710908d908c90600401613708565b602060405180830381865afa15801561172d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b949350505050565b8151815181146118eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610468565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156119275750600081115b15611b2757600080611945856000815181106105e4576105e4613370565b73ffffffffffffffffffffffffffffffffffffffff89166000908152602081815260408083208584529091528120548751939550919350916119a3919084908890859061199457611994613370565b60200260200101516001612813565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320878452909152812054875192935090916119ff91908590899085906119f0576119f0613370565b60200260200101516000612813565b90508360015b86811015611ad557611a228982815181106105e4576105e4613370565b9096509450818614611a915773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611aa884868a848151811061199457611994613370565b9350611ac183868a84815181106119f0576119f0613370565b925080611acd816133e1565b915050611a05565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611c11565b60005b81811015611c0f57828181518110611b4457611b44613370565b6020026020010151611b6f87868481518110611b6257611b62613370565b6020026020010151610298565b1015611bfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610468565b80611c07816133e1565b915050611b2a565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611c87929190613721565b60405180910390a45050505050565b611cb58573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611cfe959493929190613746565b60206040518083038160008887f1158015611d1d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d4291906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610468565b60608083806020019051810190611e5291906137b1565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e8a836041612760565b9050818110801590611ea55750611ea28260646137e8565b81105b611f31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e4345000000006064820152608401610468565b6000611f6d86838780519060200120604051602001611f52939291906137fb565b60405160208183030381529060405280519060200120612ab8565b90506000868387604051602001611f8693929190613822565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611fc18360016137e8565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf596120168560016137e8565b60405190815260200160405180910390a261203389838388610fea565b6120c157604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e41545552456064820152608401610468565b50505050509392505050565b60006120dc826060015161265d565b60f81c905060028110612171576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e00000000006064820152608401610468565b60008160ff16600281111561218857612188613644565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156121be5786604001516121c0565b335b925060008560028111156121d6576121d6613644565b036122ed5786606001518060200190518101906121f39190613859565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036122435761222188848484612440565b61223e8884845a85604051806020016040528060008152506124b8565b612436565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156122d057600080fd5b505af11580156122e4573d6000803e3d6000fd5b50505050612436565b86606001518060200190518101906123059190613887565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612386573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123aa91906138a4565b612436576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c4544006064820152608401610468565b5050505050505050565b61244d8483836001612b8b565b61245a8383836000612b8b565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6124d78573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016125209594939291906138c1565b60206040518083038160008887f115801561253f573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061256491906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610468565b6000808251116126ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f52455155495245440000000000000000006064820152608401610468565b81600183516126fe91906133ce565b8151811061270e5761270e613370565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b600061276d8260206137e8565b835110156127fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f5245515549524544000000006064820152608401610468565b6128086020836137e8565b929092015192915050565b6000806128218560206135f8565b9050600061283560016401000000006133ce565b9050600084600181111561284b5761284b613644565b0361290a5761285c85831b886137e8565b925061286a60206002613a31565b6128788689851c84166137e8565b10612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610468565b612a74565b600184600181111561291e5761291e613644565b036129c65761292f85831b886133ce565b925084818389901c161015612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610468565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610468565b5050949350505050565b6000813f8015801590612ab157507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612b4592919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612b6e939291906137fb565b604051602081830303815290604052805190602001209050919050565b600080612b9785610c8e565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150612bd790828686612813565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b73ffffffffffffffffffffffffffffffffffffffff81168114612c3457600080fd5b50565b60008060408385031215612c4a57600080fd5b8235612c5581612c12565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612c3457600080fd5b600060208284031215612ca357600080fd5b8135612ab181612c63565b600060208284031215612cc057600080fd5b8135612ab181612c12565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612d4157612d41612ccb565b604052919050565b600067ffffffffffffffff821115612d6357612d63612ccb565b5060051b60200190565b600082601f830112612d7e57600080fd5b81356020612d93612d8e83612d49565b612cfa565b82815260059290921b84018101918181019086841115612db257600080fd5b8286015b84811015612dcd5780358352918301918301612db6565b509695505050505050565b600067ffffffffffffffff821115612df257612df2612ccb565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f830112612e2f57600080fd5b8135612e3d612d8e82612dd8565b818152846020838601011115612e5257600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215612e8757600080fd5b8535612e9281612c12565b94506020860135612ea281612c12565b9350604086013567ffffffffffffffff80821115612ebf57600080fd5b612ecb89838a01612d6d565b94506060880135915080821115612ee157600080fd5b612eed89838a01612d6d565b93506080880135915080821115612f0357600080fd5b50612f1088828901612e1e565b9150509295509295909350565b60008060408385031215612f3057600080fd5b823567ffffffffffffffff80821115612f4857600080fd5b818501915085601f830112612f5c57600080fd5b81356020612f6c612d8e83612d49565b82815260059290921b84018101918181019089841115612f8b57600080fd5b948201945b83861015612fb2578535612fa381612c12565b82529482019490820190612f90565b96505086013592505080821115612fc857600080fd5b50612fd585828601612d6d565b9150509250929050565b600081518084526020808501945080840160005b8381101561300f57815187529582019590820190600101612ff3565b509495945050505050565b602081526000612ab16020830184612fdf565b8015158114612c3457600080fd5b6000806040838503121561304e57600080fd5b823561305981612c12565b915060208301356130698161302d565b809150509250929050565b60008060008060008060c0878903121561308d57600080fd5b863561309881612c12565b955060208701356130a881612c12565b9450604087013567ffffffffffffffff808211156130c557600080fd5b6130d18a838b01612d6d565b955060608901359150808211156130e757600080fd5b6130f38a838b01612d6d565b9450608089013591506131058261302d565b90925060a0880135908082111561311b57600080fd5b5061312889828a01612e1e565b9150509295509295509295565b60008060008060008060c0878903121561314e57600080fd5b863561315981612c12565b9550602087013561316981612c12565b9450604087013593506060870135925060808701356131878161302d565b915060a087013567ffffffffffffffff8111156131a357600080fd5b61312889828a01612e1e565b6000602082840312156131c157600080fd5b5035919050565b600080604083850312156131db57600080fd5b82356131e681612c12565b9150602083013561306981612c12565b6000806040838503121561320957600080fd5b50508035926020909101359150565b600080600080600060a0868803121561323057600080fd5b853561323b81612c12565b9450602086013561324b81612c12565b93506040860135925060608601359150608086013567ffffffffffffffff81111561327557600080fd5b612f1088828901612e1e565b600080600080600060a0868803121561329957600080fd5b85356132a481612c12565b945060208601356132b481612c12565b935060408601356132c48161302d565b925060608601356132d48161302d565b9150608086013567ffffffffffffffff81111561327557600080fd5b6000806000806080858703121561330657600080fd5b843561331181612c12565b935060208501359250604085013567ffffffffffffffff8082111561333557600080fd5b61334188838901612e1e565b9350606087013591508082111561335757600080fd5b5061336487828801612e1e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156102e9576102e961339f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036134125761341261339f565b5060010190565b815160009082906020808601845b8381101561344357815185529382019390820190600101613427565b50929695505050505050565b60005b8381101561346a578181015183820152602001613452565b50506000910152565b600082601f83011261348457600080fd5b8151613492612d8e82612dd8565b8181528460208386010111156134a757600080fd5b61182b82602083016020870161344f565b6000608082840312156134ca57600080fd5b6040516080810167ffffffffffffffff82821081831117156134ee576134ee612ccb565b8160405282935084518352602085015160208401526040850151915061351382612c12565b816040840152606085015191508082111561352d57600080fd5b5061353a85828601613473565b6060830152505092915050565b6000806040838503121561355a57600080fd5b825167ffffffffffffffff8082111561357257600080fd5b61357e868387016134b8565b9350602085015191508082111561359457600080fd5b50612fd585828601613473565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826135df576135df6135a1565b500490565b6000826135f3576135f36135a1565b500690565b80820281158282048414176102e9576102e961339f565b60006020828403121561362157600080fd5b815167ffffffffffffffff81111561363857600080fd5b61182b848285016134b8565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000815180845261368b81602086016020860161344f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6040815260006136d06040830185613673565b82810360208401526136e28185613673565b95945050505050565b6000602082840312156136fd57600080fd5b8151612ab181612c63565b82815260406020820152600061182b6040830184613673565b6040815260006137346040830185612fdf565b82810360208401526136e28185612fdf565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261377f60a0830186612fdf565b82810360608401526137918186612fdf565b905082810360808401526137a58185613673565b98975050505050505050565b600080604083850312156137c457600080fd5b825167ffffffffffffffff808211156137dc57600080fd5b61357e86838701613473565b808201808211156102e9576102e961339f565b6000845161380d81846020890161344f565b91909101928352506020820152604001919050565b6000845161383481846020890161344f565b8201848152835161384c81602080850190880161344f565b0160200195945050505050565b6000806040838503121561386c57600080fd5b825161387781612c12565b6020939093015192949293505050565b60006020828403121561389957600080fd5b8151612ab181612c12565b6000602082840312156138b657600080fd5b8151612ab18161302d565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261390660a0830184613673565b979650505050505050565b600181815b8085111561396a57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156139505761395061339f565b8085161561395d57918102915b93841c9390800290613916565b509250929050565b600082613981575060016102e9565b8161398e575060006102e9565b81600181146139a457600281146139ae576139ca565b60019150506102e9565b60ff8411156139bf576139bf61339f565b50506001821b6102e9565b5060208310610133831016604e8410600b84101617156139ed575081810a6102e9565b6139f78383613911565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115613a2957613a2961339f565b029392505050565b6000612ab1838361397256fea2646970667358221220b559223319062da8a6588874e441c8258c7881dd56f24a559eccb36a92cb633f64736f6c63430008120033"; static readonly abi: ({ anonymous: boolean; inputs: { diff --git a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance__factory.js b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance__factory.js index 4d60b23..fab24af 100644 --- a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance__factory.js +++ b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance__factory.js @@ -507,7 +507,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b50613a73806100206000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c8063ce0b514b1161008c578063eaec5f8111610066578063eaec5f811461024c578063f242432a1461025f578063f5d4c82014610272578063fa4e12d71461028557600080fd5b8063ce0b514b146101c8578063db90e83c146101db578063e985e9c51461020357600080fd5b80632eb2c2d6116100c85780632eb2c2d61461016d5780634e1273f414610182578063a22cb465146101a2578063a3d4926e146101b557600080fd5b8062fdd58e146100ee57806301ffc9a7146101145780632d0335ab14610137575b600080fd5b6101016100fc366004612c37565b610298565b6040519081526020015b60405180910390f35b610127610122366004612c91565b6102ef565b604051901515815260200161010b565b610101610145366004612cae565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61018061017b366004612e6f565b61038c565b005b610195610190366004612f1d565b610535565b60405161010b919061301a565b6101806101b036600461303b565b61082f565b6101806101c3366004613074565b6108c6565b6101806101d6366004613135565b610b1e565b6101ee6101e93660046131af565b610c8e565b6040805192835260208301919091520161010b565b6101276102113660046131c8565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61010161025a3660046131f6565b610cc8565b61018061026d366004613218565b610cf6565b610180610280366004613281565b610e93565b6101276102933660046132f0565b610fea565b60008060006102a684610c8e565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506102e49082610cc8565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161034257506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102e9565b3373ffffffffffffffffffffffffffffffffffffffff861614806103e0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610471576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8416610514576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610468565b61052085858585611833565b61052e858585855a86611c96565b5050505050565b815181516060919081146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610468565b6000806105f1856000815181106105e4576105e4613370565b6020026020010151610c8e565b9150915060008060008860008151811061060d5761060d613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561068357610683612ccb565b6040519080825280602002602001820160405280156106ac578160200160208202803683370190505b5090506106b98385610cc8565b816000815181106106cc576106cc613370565b602090810291909101015260015b86811015610822576106f78982815181106105e4576105e4613370565b90965094508286141580610775575089818151811061071857610718613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361074491906133ce565b8151811061075457610754613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156107e9576000808b838151811061078f5761078f613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6107f38486610cc8565b82828151811061080557610805613370565b60209081029190910101528061081a816133e1565b9150506106da565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661098f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a401610468565b60606109d260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610ab489857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610a109190613419565b604051602081830303815290604052805190602001208c604051602001610a379190613419565b604051602081830303815290604052805190602001208c610a59576000610a5c565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e3b565b9050610ac289898989611833565b8415610b055780806020019051810190610adc9190613547565b8094508193505050610af689898989866020015188611c96565b610b0089836120cd565b610b13565b610b13898989895a86611c96565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8516610bc357604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e546064820152608401610468565b6060610c0660405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3e89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a59576000610a5c565b9050610c4c89898989612440565b8415610c805780806020019051810190610c669190613547565b8094508193505050610af6898989898660200151886124b8565b610b13898989895a866124b8565b600080610c9e60206101006135d0565b610ca890846135d0565b9150610cb760206101006135d0565b610cc190846135e4565b9050915091565b600080610cdb60016401000000006133ce565b90506000610cea8460206135f8565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610d4a575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610dd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610468565b73ffffffffffffffffffffffffffffffffffffffff8416610e79576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610468565b610e8585858585612440565b61052e858585855a866124b8565b6000610f1e86837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610ec9576000610ecc565b60015b89610ed8576000610edb565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610aa0565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610fe257600081806020019051810190610fd4919061360f565b9050610fe087826120cd565b505b505050505050565b6000808251116110a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a401610468565b73ffffffffffffffffffffffffffffffffffffffff8516611145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e4552000000000000000000000000006064820152608401610468565b60006111508361265d565b60f81c9050600581106111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b60008160ff1660058111156111fc576111fc613644565b905060008080808085600581111561121657611216613644565b036112a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e4154555245000000000000000000006064820152608401610468565b60018560058111156112b7576112b7613644565b0361142957875160611461134d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b611358886000612760565b9250611365886020612760565b91508760408151811061137a5761137a613370565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156113d7573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061182b9650505050505050565b600285600581111561143d5761143d613644565b036115a35787516061146114d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b6114de886000612760565b92506114eb886020612760565b91508760408151811061150057611500613370565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016113b5565b60038560058111156115b7576115b7613644565b036116a3576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611610908c908c906004016136bd565b602060405180830381865afa15801561162d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b60048560058111156116b7576116b7613644565b036117a3576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611710908d908c90600401613708565b602060405180830381865afa15801561172d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b949350505050565b8151815181146118eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610468565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156119275750600081115b15611b2757600080611945856000815181106105e4576105e4613370565b73ffffffffffffffffffffffffffffffffffffffff89166000908152602081815260408083208584529091528120548751939550919350916119a3919084908890859061199457611994613370565b60200260200101516001612813565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320878452909152812054875192935090916119ff91908590899085906119f0576119f0613370565b60200260200101516000612813565b90508360015b86811015611ad557611a228982815181106105e4576105e4613370565b9096509450818614611a915773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611aa884868a848151811061199457611994613370565b9350611ac183868a84815181106119f0576119f0613370565b925080611acd816133e1565b915050611a05565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611c11565b60005b81811015611c0f57828181518110611b4457611b44613370565b6020026020010151611b6f87868481518110611b6257611b62613370565b6020026020010151610298565b1015611bfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610468565b80611c07816133e1565b915050611b2a565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611c87929190613721565b60405180910390a45050505050565b611cb58573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611cfe959493929190613746565b60206040518083038160008887f1158015611d1d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d4291906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610468565b60608083806020019051810190611e5291906137b1565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e8a836041612760565b9050818110801590611ea55750611ea28260646137e8565b81105b611f31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e4345000000006064820152608401610468565b6000611f6d86838780519060200120604051602001611f52939291906137fb565b60405160208183030381529060405280519060200120612ab8565b90506000868387604051602001611f8693929190613822565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611fc18360016137e8565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf596120168560016137e8565b60405190815260200160405180910390a261203389838388610fea565b6120c157604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e41545552456064820152608401610468565b50505050509392505050565b60006120dc826060015161265d565b60f81c905060028110612171576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e00000000006064820152608401610468565b60008160ff16600281111561218857612188613644565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156121be5786604001516121c0565b335b925060008560028111156121d6576121d6613644565b036122ed5786606001518060200190518101906121f39190613859565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036122435761222188848484612440565b61223e8884845a85604051806020016040528060008152506124b8565b612436565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156122d057600080fd5b505af11580156122e4573d6000803e3d6000fd5b50505050612436565b86606001518060200190518101906123059190613887565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612386573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123aa91906138a4565b612436576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c4544006064820152608401610468565b5050505050505050565b61244d8483836001612b8b565b61245a8383836000612b8b565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6124d78573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016125209594939291906138c1565b60206040518083038160008887f115801561253f573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061256491906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610468565b6000808251116126ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f52455155495245440000000000000000006064820152608401610468565b81600183516126fe91906133ce565b8151811061270e5761270e613370565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b600061276d8260206137e8565b835110156127fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f5245515549524544000000006064820152608401610468565b6128086020836137e8565b929092015192915050565b6000806128218560206135f8565b9050600061283560016401000000006133ce565b9050600084600181111561284b5761284b613644565b0361290a5761285c85831b886137e8565b925061286a60206002613a31565b6128788689851c84166137e8565b10612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610468565b612a74565b600184600181111561291e5761291e613644565b036129c65761292f85831b886133ce565b925084818389901c161015612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610468565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610468565b5050949350505050565b6000813f8015801590612ab157507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612b4592919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612b6e939291906137fb565b604051602081830303815290604052805190602001209050919050565b600080612b9785610c8e565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150612bd790828686612813565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b73ffffffffffffffffffffffffffffffffffffffff81168114612c3457600080fd5b50565b60008060408385031215612c4a57600080fd5b8235612c5581612c12565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612c3457600080fd5b600060208284031215612ca357600080fd5b8135612ab181612c63565b600060208284031215612cc057600080fd5b8135612ab181612c12565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612d4157612d41612ccb565b604052919050565b600067ffffffffffffffff821115612d6357612d63612ccb565b5060051b60200190565b600082601f830112612d7e57600080fd5b81356020612d93612d8e83612d49565b612cfa565b82815260059290921b84018101918181019086841115612db257600080fd5b8286015b84811015612dcd5780358352918301918301612db6565b509695505050505050565b600067ffffffffffffffff821115612df257612df2612ccb565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f830112612e2f57600080fd5b8135612e3d612d8e82612dd8565b818152846020838601011115612e5257600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215612e8757600080fd5b8535612e9281612c12565b94506020860135612ea281612c12565b9350604086013567ffffffffffffffff80821115612ebf57600080fd5b612ecb89838a01612d6d565b94506060880135915080821115612ee157600080fd5b612eed89838a01612d6d565b93506080880135915080821115612f0357600080fd5b50612f1088828901612e1e565b9150509295509295909350565b60008060408385031215612f3057600080fd5b823567ffffffffffffffff80821115612f4857600080fd5b818501915085601f830112612f5c57600080fd5b81356020612f6c612d8e83612d49565b82815260059290921b84018101918181019089841115612f8b57600080fd5b948201945b83861015612fb2578535612fa381612c12565b82529482019490820190612f90565b96505086013592505080821115612fc857600080fd5b50612fd585828601612d6d565b9150509250929050565b600081518084526020808501945080840160005b8381101561300f57815187529582019590820190600101612ff3565b509495945050505050565b602081526000612ab16020830184612fdf565b8015158114612c3457600080fd5b6000806040838503121561304e57600080fd5b823561305981612c12565b915060208301356130698161302d565b809150509250929050565b60008060008060008060c0878903121561308d57600080fd5b863561309881612c12565b955060208701356130a881612c12565b9450604087013567ffffffffffffffff808211156130c557600080fd5b6130d18a838b01612d6d565b955060608901359150808211156130e757600080fd5b6130f38a838b01612d6d565b9450608089013591506131058261302d565b90925060a0880135908082111561311b57600080fd5b5061312889828a01612e1e565b9150509295509295509295565b60008060008060008060c0878903121561314e57600080fd5b863561315981612c12565b9550602087013561316981612c12565b9450604087013593506060870135925060808701356131878161302d565b915060a087013567ffffffffffffffff8111156131a357600080fd5b61312889828a01612e1e565b6000602082840312156131c157600080fd5b5035919050565b600080604083850312156131db57600080fd5b82356131e681612c12565b9150602083013561306981612c12565b6000806040838503121561320957600080fd5b50508035926020909101359150565b600080600080600060a0868803121561323057600080fd5b853561323b81612c12565b9450602086013561324b81612c12565b93506040860135925060608601359150608086013567ffffffffffffffff81111561327557600080fd5b612f1088828901612e1e565b600080600080600060a0868803121561329957600080fd5b85356132a481612c12565b945060208601356132b481612c12565b935060408601356132c48161302d565b925060608601356132d48161302d565b9150608086013567ffffffffffffffff81111561327557600080fd5b6000806000806080858703121561330657600080fd5b843561331181612c12565b935060208501359250604085013567ffffffffffffffff8082111561333557600080fd5b61334188838901612e1e565b9350606087013591508082111561335757600080fd5b5061336487828801612e1e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156102e9576102e961339f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036134125761341261339f565b5060010190565b815160009082906020808601845b8381101561344357815185529382019390820190600101613427565b50929695505050505050565b60005b8381101561346a578181015183820152602001613452565b50506000910152565b600082601f83011261348457600080fd5b8151613492612d8e82612dd8565b8181528460208386010111156134a757600080fd5b61182b82602083016020870161344f565b6000608082840312156134ca57600080fd5b6040516080810167ffffffffffffffff82821081831117156134ee576134ee612ccb565b8160405282935084518352602085015160208401526040850151915061351382612c12565b816040840152606085015191508082111561352d57600080fd5b5061353a85828601613473565b6060830152505092915050565b6000806040838503121561355a57600080fd5b825167ffffffffffffffff8082111561357257600080fd5b61357e868387016134b8565b9350602085015191508082111561359457600080fd5b50612fd585828601613473565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826135df576135df6135a1565b500490565b6000826135f3576135f36135a1565b500690565b80820281158282048414176102e9576102e961339f565b60006020828403121561362157600080fd5b815167ffffffffffffffff81111561363857600080fd5b61182b848285016134b8565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000815180845261368b81602086016020860161344f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6040815260006136d06040830185613673565b82810360208401526136e28185613673565b95945050505050565b6000602082840312156136fd57600080fd5b8151612ab181612c63565b82815260406020820152600061182b6040830184613673565b6040815260006137346040830185612fdf565b82810360208401526136e28185612fdf565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261377f60a0830186612fdf565b82810360608401526137918186612fdf565b905082810360808401526137a58185613673565b98975050505050505050565b600080604083850312156137c457600080fd5b825167ffffffffffffffff808211156137dc57600080fd5b61357e86838701613473565b808201808211156102e9576102e961339f565b6000845161380d81846020890161344f565b91909101928352506020820152604001919050565b6000845161383481846020890161344f565b8201848152835161384c81602080850190880161344f565b0160200195945050505050565b6000806040838503121561386c57600080fd5b825161387781612c12565b6020939093015192949293505050565b60006020828403121561389957600080fd5b8151612ab181612c12565b6000602082840312156138b657600080fd5b8151612ab18161302d565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261390660a0830184613673565b979650505050505050565b600181815b8085111561396a57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156139505761395061339f565b8085161561395d57918102915b93841c9390800290613916565b509250929050565b600082613981575060016102e9565b8161398e575060006102e9565b81600181146139a457600281146139ae576139ca565b60019150506102e9565b60ff8411156139bf576139bf61339f565b50506001821b6102e9565b5060208310610133831016604e8410600b84101617156139ed575081810a6102e9565b6139f78383613911565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115613a2957613a2961339f565b029392505050565b6000612ab1838361397256fea264697066735822122098715153ff3f6e26d21adb8d6266df69c9a6c72e3392cd72e1a68e86932d315b64736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b50613a73806100206000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c8063ce0b514b1161008c578063eaec5f8111610066578063eaec5f811461024c578063f242432a1461025f578063f5d4c82014610272578063fa4e12d71461028557600080fd5b8063ce0b514b146101c8578063db90e83c146101db578063e985e9c51461020357600080fd5b80632eb2c2d6116100c85780632eb2c2d61461016d5780634e1273f414610182578063a22cb465146101a2578063a3d4926e146101b557600080fd5b8062fdd58e146100ee57806301ffc9a7146101145780632d0335ab14610137575b600080fd5b6101016100fc366004612c37565b610298565b6040519081526020015b60405180910390f35b610127610122366004612c91565b6102ef565b604051901515815260200161010b565b610101610145366004612cae565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61018061017b366004612e6f565b61038c565b005b610195610190366004612f1d565b610535565b60405161010b919061301a565b6101806101b036600461303b565b61082f565b6101806101c3366004613074565b6108c6565b6101806101d6366004613135565b610b1e565b6101ee6101e93660046131af565b610c8e565b6040805192835260208301919091520161010b565b6101276102113660046131c8565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61010161025a3660046131f6565b610cc8565b61018061026d366004613218565b610cf6565b610180610280366004613281565b610e93565b6101276102933660046132f0565b610fea565b60008060006102a684610c8e565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506102e49082610cc8565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161034257506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102e9565b3373ffffffffffffffffffffffffffffffffffffffff861614806103e0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610471576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8416610514576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610468565b61052085858585611833565b61052e858585855a86611c96565b5050505050565b815181516060919081146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610468565b6000806105f1856000815181106105e4576105e4613370565b6020026020010151610c8e565b9150915060008060008860008151811061060d5761060d613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561068357610683612ccb565b6040519080825280602002602001820160405280156106ac578160200160208202803683370190505b5090506106b98385610cc8565b816000815181106106cc576106cc613370565b602090810291909101015260015b86811015610822576106f78982815181106105e4576105e4613370565b90965094508286141580610775575089818151811061071857610718613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361074491906133ce565b8151811061075457610754613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156107e9576000808b838151811061078f5761078f613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6107f38486610cc8565b82828151811061080557610805613370565b60209081029190910101528061081a816133e1565b9150506106da565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661098f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a401610468565b60606109d260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610ab489857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610a109190613419565b604051602081830303815290604052805190602001208c604051602001610a379190613419565b604051602081830303815290604052805190602001208c610a59576000610a5c565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e3b565b9050610ac289898989611833565b8415610b055780806020019051810190610adc9190613547565b8094508193505050610af689898989866020015188611c96565b610b0089836120cd565b610b13565b610b13898989895a86611c96565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8516610bc357604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e546064820152608401610468565b6060610c0660405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3e89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a59576000610a5c565b9050610c4c89898989612440565b8415610c805780806020019051810190610c669190613547565b8094508193505050610af6898989898660200151886124b8565b610b13898989895a866124b8565b600080610c9e60206101006135d0565b610ca890846135d0565b9150610cb760206101006135d0565b610cc190846135e4565b9050915091565b600080610cdb60016401000000006133ce565b90506000610cea8460206135f8565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610d4a575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610dd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610468565b73ffffffffffffffffffffffffffffffffffffffff8416610e79576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610468565b610e8585858585612440565b61052e858585855a866124b8565b6000610f1e86837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610ec9576000610ecc565b60015b89610ed8576000610edb565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610aa0565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610fe257600081806020019051810190610fd4919061360f565b9050610fe087826120cd565b505b505050505050565b6000808251116110a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a401610468565b73ffffffffffffffffffffffffffffffffffffffff8516611145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e4552000000000000000000000000006064820152608401610468565b60006111508361265d565b60f81c9050600581106111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b60008160ff1660058111156111fc576111fc613644565b905060008080808085600581111561121657611216613644565b036112a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e4154555245000000000000000000006064820152608401610468565b60018560058111156112b7576112b7613644565b0361142957875160611461134d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b611358886000612760565b9250611365886020612760565b91508760408151811061137a5761137a613370565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156113d7573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061182b9650505050505050565b600285600581111561143d5761143d613644565b036115a35787516061146114d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b6114de886000612760565b92506114eb886020612760565b91508760408151811061150057611500613370565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016113b5565b60038560058111156115b7576115b7613644565b036116a3576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611610908c908c906004016136bd565b602060405180830381865afa15801561162d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b60048560058111156116b7576116b7613644565b036117a3576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611710908d908c90600401613708565b602060405180830381865afa15801561172d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b949350505050565b8151815181146118eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610468565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156119275750600081115b15611b2757600080611945856000815181106105e4576105e4613370565b73ffffffffffffffffffffffffffffffffffffffff89166000908152602081815260408083208584529091528120548751939550919350916119a3919084908890859061199457611994613370565b60200260200101516001612813565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320878452909152812054875192935090916119ff91908590899085906119f0576119f0613370565b60200260200101516000612813565b90508360015b86811015611ad557611a228982815181106105e4576105e4613370565b9096509450818614611a915773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611aa884868a848151811061199457611994613370565b9350611ac183868a84815181106119f0576119f0613370565b925080611acd816133e1565b915050611a05565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611c11565b60005b81811015611c0f57828181518110611b4457611b44613370565b6020026020010151611b6f87868481518110611b6257611b62613370565b6020026020010151610298565b1015611bfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610468565b80611c07816133e1565b915050611b2a565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611c87929190613721565b60405180910390a45050505050565b611cb58573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611cfe959493929190613746565b60206040518083038160008887f1158015611d1d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d4291906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610468565b60608083806020019051810190611e5291906137b1565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e8a836041612760565b9050818110801590611ea55750611ea28260646137e8565b81105b611f31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e4345000000006064820152608401610468565b6000611f6d86838780519060200120604051602001611f52939291906137fb565b60405160208183030381529060405280519060200120612ab8565b90506000868387604051602001611f8693929190613822565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611fc18360016137e8565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf596120168560016137e8565b60405190815260200160405180910390a261203389838388610fea565b6120c157604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e41545552456064820152608401610468565b50505050509392505050565b60006120dc826060015161265d565b60f81c905060028110612171576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e00000000006064820152608401610468565b60008160ff16600281111561218857612188613644565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156121be5786604001516121c0565b335b925060008560028111156121d6576121d6613644565b036122ed5786606001518060200190518101906121f39190613859565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036122435761222188848484612440565b61223e8884845a85604051806020016040528060008152506124b8565b612436565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156122d057600080fd5b505af11580156122e4573d6000803e3d6000fd5b50505050612436565b86606001518060200190518101906123059190613887565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612386573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123aa91906138a4565b612436576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c4544006064820152608401610468565b5050505050505050565b61244d8483836001612b8b565b61245a8383836000612b8b565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6124d78573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016125209594939291906138c1565b60206040518083038160008887f115801561253f573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061256491906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610468565b6000808251116126ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f52455155495245440000000000000000006064820152608401610468565b81600183516126fe91906133ce565b8151811061270e5761270e613370565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b600061276d8260206137e8565b835110156127fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f5245515549524544000000006064820152608401610468565b6128086020836137e8565b929092015192915050565b6000806128218560206135f8565b9050600061283560016401000000006133ce565b9050600084600181111561284b5761284b613644565b0361290a5761285c85831b886137e8565b925061286a60206002613a31565b6128788689851c84166137e8565b10612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610468565b612a74565b600184600181111561291e5761291e613644565b036129c65761292f85831b886133ce565b925084818389901c161015612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610468565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610468565b5050949350505050565b6000813f8015801590612ab157507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612b4592919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612b6e939291906137fb565b604051602081830303815290604052805190602001209050919050565b600080612b9785610c8e565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150612bd790828686612813565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b73ffffffffffffffffffffffffffffffffffffffff81168114612c3457600080fd5b50565b60008060408385031215612c4a57600080fd5b8235612c5581612c12565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612c3457600080fd5b600060208284031215612ca357600080fd5b8135612ab181612c63565b600060208284031215612cc057600080fd5b8135612ab181612c12565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612d4157612d41612ccb565b604052919050565b600067ffffffffffffffff821115612d6357612d63612ccb565b5060051b60200190565b600082601f830112612d7e57600080fd5b81356020612d93612d8e83612d49565b612cfa565b82815260059290921b84018101918181019086841115612db257600080fd5b8286015b84811015612dcd5780358352918301918301612db6565b509695505050505050565b600067ffffffffffffffff821115612df257612df2612ccb565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f830112612e2f57600080fd5b8135612e3d612d8e82612dd8565b818152846020838601011115612e5257600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215612e8757600080fd5b8535612e9281612c12565b94506020860135612ea281612c12565b9350604086013567ffffffffffffffff80821115612ebf57600080fd5b612ecb89838a01612d6d565b94506060880135915080821115612ee157600080fd5b612eed89838a01612d6d565b93506080880135915080821115612f0357600080fd5b50612f1088828901612e1e565b9150509295509295909350565b60008060408385031215612f3057600080fd5b823567ffffffffffffffff80821115612f4857600080fd5b818501915085601f830112612f5c57600080fd5b81356020612f6c612d8e83612d49565b82815260059290921b84018101918181019089841115612f8b57600080fd5b948201945b83861015612fb2578535612fa381612c12565b82529482019490820190612f90565b96505086013592505080821115612fc857600080fd5b50612fd585828601612d6d565b9150509250929050565b600081518084526020808501945080840160005b8381101561300f57815187529582019590820190600101612ff3565b509495945050505050565b602081526000612ab16020830184612fdf565b8015158114612c3457600080fd5b6000806040838503121561304e57600080fd5b823561305981612c12565b915060208301356130698161302d565b809150509250929050565b60008060008060008060c0878903121561308d57600080fd5b863561309881612c12565b955060208701356130a881612c12565b9450604087013567ffffffffffffffff808211156130c557600080fd5b6130d18a838b01612d6d565b955060608901359150808211156130e757600080fd5b6130f38a838b01612d6d565b9450608089013591506131058261302d565b90925060a0880135908082111561311b57600080fd5b5061312889828a01612e1e565b9150509295509295509295565b60008060008060008060c0878903121561314e57600080fd5b863561315981612c12565b9550602087013561316981612c12565b9450604087013593506060870135925060808701356131878161302d565b915060a087013567ffffffffffffffff8111156131a357600080fd5b61312889828a01612e1e565b6000602082840312156131c157600080fd5b5035919050565b600080604083850312156131db57600080fd5b82356131e681612c12565b9150602083013561306981612c12565b6000806040838503121561320957600080fd5b50508035926020909101359150565b600080600080600060a0868803121561323057600080fd5b853561323b81612c12565b9450602086013561324b81612c12565b93506040860135925060608601359150608086013567ffffffffffffffff81111561327557600080fd5b612f1088828901612e1e565b600080600080600060a0868803121561329957600080fd5b85356132a481612c12565b945060208601356132b481612c12565b935060408601356132c48161302d565b925060608601356132d48161302d565b9150608086013567ffffffffffffffff81111561327557600080fd5b6000806000806080858703121561330657600080fd5b843561331181612c12565b935060208501359250604085013567ffffffffffffffff8082111561333557600080fd5b61334188838901612e1e565b9350606087013591508082111561335757600080fd5b5061336487828801612e1e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156102e9576102e961339f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036134125761341261339f565b5060010190565b815160009082906020808601845b8381101561344357815185529382019390820190600101613427565b50929695505050505050565b60005b8381101561346a578181015183820152602001613452565b50506000910152565b600082601f83011261348457600080fd5b8151613492612d8e82612dd8565b8181528460208386010111156134a757600080fd5b61182b82602083016020870161344f565b6000608082840312156134ca57600080fd5b6040516080810167ffffffffffffffff82821081831117156134ee576134ee612ccb565b8160405282935084518352602085015160208401526040850151915061351382612c12565b816040840152606085015191508082111561352d57600080fd5b5061353a85828601613473565b6060830152505092915050565b6000806040838503121561355a57600080fd5b825167ffffffffffffffff8082111561357257600080fd5b61357e868387016134b8565b9350602085015191508082111561359457600080fd5b50612fd585828601613473565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826135df576135df6135a1565b500490565b6000826135f3576135f36135a1565b500690565b80820281158282048414176102e9576102e961339f565b60006020828403121561362157600080fd5b815167ffffffffffffffff81111561363857600080fd5b61182b848285016134b8565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000815180845261368b81602086016020860161344f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6040815260006136d06040830185613673565b82810360208401526136e28185613673565b95945050505050565b6000602082840312156136fd57600080fd5b8151612ab181612c63565b82815260406020820152600061182b6040830184613673565b6040815260006137346040830185612fdf565b82810360208401526136e28185612fdf565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261377f60a0830186612fdf565b82810360608401526137918186612fdf565b905082810360808401526137a58185613673565b98975050505050505050565b600080604083850312156137c457600080fd5b825167ffffffffffffffff808211156137dc57600080fd5b61357e86838701613473565b808201808211156102e9576102e961339f565b6000845161380d81846020890161344f565b91909101928352506020820152604001919050565b6000845161383481846020890161344f565b8201848152835161384c81602080850190880161344f565b0160200195945050505050565b6000806040838503121561386c57600080fd5b825161387781612c12565b6020939093015192949293505050565b60006020828403121561389957600080fd5b8151612ab181612c12565b6000602082840312156138b657600080fd5b8151612ab18161302d565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261390660a0830184613673565b979650505050505050565b600181815b8085111561396a57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156139505761395061339f565b8085161561395d57918102915b93841c9390800290613916565b509250929050565b600082613981575060016102e9565b8161398e575060006102e9565b81600181146139a457600281146139ae576139ca565b60019150506102e9565b60ff8411156139bf576139bf61339f565b50506001821b6102e9565b5060208310610133831016604e8410600b84101617156139ed575081810a6102e9565b6139f78383613911565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115613a2957613a2961339f565b029392505050565b6000612ab1838361397256fea2646970667358221220b559223319062da8a6588874e441c8258c7881dd56f24a559eccb36a92cb633f64736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155MetaPackedBalance__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance__factory.d.ts b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance__factory.d.ts index 31e2e0c..30b0051 100644 --- a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance__factory.d.ts +++ b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155MintBurnPackedBalance__factory extends ContractFacto }): TransactionRequest; attach(address: string): ERC1155MintBurnPackedBalance; connect(signer: Signer): ERC1155MintBurnPackedBalance__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212207c940e53b85785a9e9696ed245fe0b69b28d15ee0aa47858d9b928543d5327fe64736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212202cced22345fda755dd55b0fc8eb873ea916b82a969b4861b9e184818a10fab8564736f6c63430008120033"; static readonly abi: ({ anonymous: boolean; inputs: { diff --git a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance__factory.js b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance__factory.js index b009280..a0c8097 100644 --- a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance__factory.js +++ b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance__factory.js @@ -326,7 +326,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212207c940e53b85785a9e9696ed245fe0b69b28d15ee0aa47858d9b928543d5327fe64736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212202cced22345fda755dd55b0fc8eb873ea916b82a969b4861b9e184818a10fab8564736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155MintBurnPackedBalance__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155PackedBalance__factory.d.ts b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155PackedBalance__factory.d.ts index 9e45a44..55797a6 100644 --- a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155PackedBalance__factory.d.ts +++ b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155PackedBalance__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC1155PackedBalance__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC1155PackedBalance; connect(signer: Signer): ERC1155PackedBalance__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212204eec66abcd235a11d6c0b62912548539871161268ae44a9e452076abd032582964736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea264697066735822122038794a57bf8c1e26523242d52ba5aa85867fc07bea3fe62188e13b6f70f87eb464736f6c63430008120033"; static readonly abi: ({ anonymous: boolean; inputs: { diff --git a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155PackedBalance__factory.js b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155PackedBalance__factory.js index 2b68ba3..f6db65c 100644 --- a/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155PackedBalance__factory.js +++ b/src/adapter/factories/tokens/ERC1155PackedBalance/ERC1155PackedBalance__factory.js @@ -326,7 +326,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212204eec66abcd235a11d6c0b62912548539871161268ae44a9e452076abd032582964736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea264697066735822122038794a57bf8c1e26523242d52ba5aa85867fc07bea3fe62188e13b6f70f87eb464736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC1155PackedBalance__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/tokens/ERC2981/ERC2981Global__factory.d.ts b/src/adapter/factories/tokens/ERC2981/ERC2981Global__factory.d.ts index 24bcd29..7e675bb 100644 --- a/src/adapter/factories/tokens/ERC2981/ERC2981Global__factory.d.ts +++ b/src/adapter/factories/tokens/ERC2981/ERC2981Global__factory.d.ts @@ -13,7 +13,7 @@ export declare class ERC2981Global__factory extends ContractFactory { }): TransactionRequest; attach(address: string): ERC2981Global; connect(signer: Signer): ERC2981Global__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b506102e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a7146100465780632a55205a1461006e578063c9823cc6146100ad575b600080fd5b6100596100543660046101cc565b6100d1565b60405190151581526020015b60405180910390f35b61008161007c366004610215565b610170565b6040805173ffffffffffffffffffffffffffffffffffffffff9093168352602083019190915201610065565b6000546001546100819173ffffffffffffffffffffffffffffffffffffffff169082565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161012457506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b604080518082019091526000805473ffffffffffffffffffffffffffffffffffffffff1680835260015460208401819052919283929091906103e8906101b69087610237565b6101c09190610275565b92509250509250929050565b6000602082840312156101de57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461020e57600080fd5b9392505050565b6000806040838503121561022857600080fd5b50508035926020909101359150565b808202811582820484141761016a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826102ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea264697066735822122087687791d7575f4a7d1f0def9dcfe1ad5904d82c618342ff386dcc36b20e759a64736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b506102e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a7146100465780632a55205a1461006e578063c9823cc6146100ad575b600080fd5b6100596100543660046101cc565b6100d1565b60405190151581526020015b60405180910390f35b61008161007c366004610215565b610170565b6040805173ffffffffffffffffffffffffffffffffffffffff9093168352602083019190915201610065565b6000546001546100819173ffffffffffffffffffffffffffffffffffffffff169082565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161012457506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b604080518082019091526000805473ffffffffffffffffffffffffffffffffffffffff1680835260015460208401819052919283929091906103e8906101b69087610237565b6101c09190610275565b92509250509250929050565b6000602082840312156101de57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461020e57600080fd5b9392505050565b6000806040838503121561022857600080fd5b50508035926020909101359150565b808202811582820484141761016a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826102ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea2646970667358221220198f2eb85709890164ed282227c53f862658c62d77de9756f5d51ce72a87733e64736f6c63430008120033"; static readonly abi: { inputs: { internalType: string; diff --git a/src/adapter/factories/tokens/ERC2981/ERC2981Global__factory.js b/src/adapter/factories/tokens/ERC2981/ERC2981Global__factory.js index cba9957..27d31ba 100644 --- a/src/adapter/factories/tokens/ERC2981/ERC2981Global__factory.js +++ b/src/adapter/factories/tokens/ERC2981/ERC2981Global__factory.js @@ -70,7 +70,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b506102e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a7146100465780632a55205a1461006e578063c9823cc6146100ad575b600080fd5b6100596100543660046101cc565b6100d1565b60405190151581526020015b60405180910390f35b61008161007c366004610215565b610170565b6040805173ffffffffffffffffffffffffffffffffffffffff9093168352602083019190915201610065565b6000546001546100819173ffffffffffffffffffffffffffffffffffffffff169082565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161012457506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b604080518082019091526000805473ffffffffffffffffffffffffffffffffffffffff1680835260015460208401819052919283929091906103e8906101b69087610237565b6101c09190610275565b92509250509250929050565b6000602082840312156101de57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461020e57600080fd5b9392505050565b6000806040838503121561022857600080fd5b50508035926020909101359150565b808202811582820484141761016a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826102ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea264697066735822122087687791d7575f4a7d1f0def9dcfe1ad5904d82c618342ff386dcc36b20e759a64736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b506102e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a7146100465780632a55205a1461006e578063c9823cc6146100ad575b600080fd5b6100596100543660046101cc565b6100d1565b60405190151581526020015b60405180910390f35b61008161007c366004610215565b610170565b6040805173ffffffffffffffffffffffffffffffffffffffff9093168352602083019190915201610065565b6000546001546100819173ffffffffffffffffffffffffffffffffffffffff169082565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161012457506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b604080518082019091526000805473ffffffffffffffffffffffffffffffffffffffff1680835260015460208401819052919283929091906103e8906101b69087610237565b6101c09190610275565b92509250509250929050565b6000602082840312156101de57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461020e57600080fd5b9392505050565b6000806040838503121561022857600080fd5b50508035926020909101359150565b808202811582820484141761016a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826102ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea2646970667358221220198f2eb85709890164ed282227c53f862658c62d77de9756f5d51ce72a87733e64736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class ERC2981Global__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/utils/Ownable__factory.d.ts b/src/adapter/factories/utils/Ownable__factory.d.ts index d2e0534..b1de3cd 100644 --- a/src/adapter/factories/utils/Ownable__factory.d.ts +++ b/src/adapter/factories/utils/Ownable__factory.d.ts @@ -13,7 +13,7 @@ export declare class Ownable__factory extends ContractFactory { }): TransactionRequest; attach(address: string): Ownable; connect(signer: Signer): Ownable__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36102cb806100776000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80638da5cb5b1461003b578063f2fde38b14610067575b600080fd5b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61007a610075366004610258565b61007c565b005b60005473ffffffffffffffffffffffffffffffffffffffff163314610128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81166101cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161011f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561026a57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461028e57600080fd5b939250505056fea2646970667358221220142f6fda398d8c1ffe25daf80e99165e7a65359f86ec34f9a4986d95e7fc73aa64736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36102cb806100776000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80638da5cb5b1461003b578063f2fde38b14610067575b600080fd5b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61007a610075366004610258565b61007c565b005b60005473ffffffffffffffffffffffffffffffffffffffff163314610128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81166101cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161011f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561026a57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461028e57600080fd5b939250505056fea2646970667358221220059eb6b8e3dc8ead9ce4177873649a0b82578b2568a75fc10758a4379758e98d64736f6c63430008120033"; static readonly abi: ({ inputs: never[]; stateMutability: string; diff --git a/src/adapter/factories/utils/Ownable__factory.js b/src/adapter/factories/utils/Ownable__factory.js index ef5a09d..da2e397 100644 --- a/src/adapter/factories/utils/Ownable__factory.js +++ b/src/adapter/factories/utils/Ownable__factory.js @@ -54,7 +54,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36102cb806100776000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80638da5cb5b1461003b578063f2fde38b14610067575b600080fd5b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61007a610075366004610258565b61007c565b005b60005473ffffffffffffffffffffffffffffffffffffffff163314610128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81166101cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161011f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561026a57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461028e57600080fd5b939250505056fea2646970667358221220142f6fda398d8c1ffe25daf80e99165e7a65359f86ec34f9a4986d95e7fc73aa64736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36102cb806100776000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80638da5cb5b1461003b578063f2fde38b14610067575b600080fd5b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61007a610075366004610258565b61007c565b005b60005473ffffffffffffffffffffffffffffffffffffffff163314610128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81166101cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161011f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561026a57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461028e57600080fd5b939250505056fea2646970667358221220059eb6b8e3dc8ead9ce4177873649a0b82578b2568a75fc10758a4379758e98d64736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class Ownable__factory extends ContractFactory { constructor(...args) { diff --git a/src/adapter/factories/utils/SignatureValidator__factory.d.ts b/src/adapter/factories/utils/SignatureValidator__factory.d.ts index 2136592..b711ca5 100644 --- a/src/adapter/factories/utils/SignatureValidator__factory.d.ts +++ b/src/adapter/factories/utils/SignatureValidator__factory.d.ts @@ -13,7 +13,7 @@ export declare class SignatureValidator__factory extends ContractFactory { }): TransactionRequest; attach(address: string): SignatureValidator; connect(signer: Signer): SignatureValidator__factory; - static readonly bytecode = "0x608060405234801561001057600080fd5b50610daf806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063fa4e12d714610030575b600080fd5b61004361003e366004610b39565b610057565b604051901515815260200160405180910390f35b600080825111610114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff85166101b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e455200000000000000000000000000606482015260840161010b565b60006101c2836108a5565b60f81c905060058110610257576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b60008160ff16600581111561026e5761026e610bd2565b905060008080808085600581111561028857610288610bd2565b03610315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e415455524500000000000000000000606482015260840161010b565b600185600581111561032957610329610bd2565b0361049b5787516061146103bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6103ca8860006109a8565b92506103d78860206109a8565b9150876040815181106103ec576103ec610c01565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa158015610449573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061089d9650505050505050565b60028560058111156104af576104af610bd2565b03610615578751606114610545576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6105508860006109a8565b925061055d8860206109a8565b91508760408151811061057257610572610c01565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001610427565b600385600581111561062957610629610bd2565b03610715576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90610682908c908c90600401610c94565b602060405180830381865afa15801561069f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b600485600581111561072957610729610bd2565b03610815576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90610782908d908c90600401610d0b565b602060405180830381865afa15801561079f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b949350505050565b600080825111610937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f5245515549524544000000000000000000606482015260840161010b565b81600183516109469190610d53565b8151811061095657610956610c01565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b60006109b5826020610d66565b83511015610a45576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f524551554952454400000000606482015260840161010b565b610a50602083610d66565b91508183015190505b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610a9f57600080fd5b813567ffffffffffffffff80821115610aba57610aba610a5f565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715610b0057610b00610a5f565b81604052838152866020858801011115610b1957600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610b4f57600080fd5b843573ffffffffffffffffffffffffffffffffffffffff81168114610b7357600080fd5b935060208501359250604085013567ffffffffffffffff80821115610b9757600080fd5b610ba388838901610a8e565b93506060870135915080821115610bb957600080fd5b50610bc687828801610a8e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b81811015610c5657602081850181015186830182015201610c3a565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b604081526000610ca76040830185610c30565b8281036020840152610cb98185610c30565b95945050505050565b600060208284031215610cd457600080fd5b81517fffffffff0000000000000000000000000000000000000000000000000000000081168114610d0457600080fd5b9392505050565b82815260406020820152600061089d6040830184610c30565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610a5957610a59610d24565b80820180821115610a5957610a59610d2456fea2646970667358221220a455b2e2b2e81ba33e9695422a8189f870b6c585b635e5b39875d139b9e2220c64736f6c63430008120033"; + static readonly bytecode = "0x608060405234801561001057600080fd5b50610daf806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063fa4e12d714610030575b600080fd5b61004361003e366004610b39565b610057565b604051901515815260200160405180910390f35b600080825111610114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff85166101b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e455200000000000000000000000000606482015260840161010b565b60006101c2836108a5565b60f81c905060058110610257576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b60008160ff16600581111561026e5761026e610bd2565b905060008080808085600581111561028857610288610bd2565b03610315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e415455524500000000000000000000606482015260840161010b565b600185600581111561032957610329610bd2565b0361049b5787516061146103bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6103ca8860006109a8565b92506103d78860206109a8565b9150876040815181106103ec576103ec610c01565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa158015610449573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061089d9650505050505050565b60028560058111156104af576104af610bd2565b03610615578751606114610545576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6105508860006109a8565b925061055d8860206109a8565b91508760408151811061057257610572610c01565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001610427565b600385600581111561062957610629610bd2565b03610715576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90610682908c908c90600401610c94565b602060405180830381865afa15801561069f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b600485600581111561072957610729610bd2565b03610815576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90610782908d908c90600401610d0b565b602060405180830381865afa15801561079f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b949350505050565b600080825111610937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f5245515549524544000000000000000000606482015260840161010b565b81600183516109469190610d53565b8151811061095657610956610c01565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b60006109b5826020610d66565b83511015610a45576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f524551554952454400000000606482015260840161010b565b610a50602083610d66565b91508183015190505b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610a9f57600080fd5b813567ffffffffffffffff80821115610aba57610aba610a5f565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715610b0057610b00610a5f565b81604052838152866020858801011115610b1957600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610b4f57600080fd5b843573ffffffffffffffffffffffffffffffffffffffff81168114610b7357600080fd5b935060208501359250604085013567ffffffffffffffff80821115610b9757600080fd5b610ba388838901610a8e565b93506060870135915080821115610bb957600080fd5b50610bc687828801610a8e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b81811015610c5657602081850181015186830182015201610c3a565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b604081526000610ca76040830185610c30565b8281036020840152610cb98185610c30565b95945050505050565b600060208284031215610cd457600080fd5b81517fffffffff0000000000000000000000000000000000000000000000000000000081168114610d0457600080fd5b9392505050565b82815260406020820152600061089d6040830184610c30565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610a5957610a59610d24565b80820180821115610a5957610a59610d2456fea2646970667358221220cfa16dba9e200d86917fa30f1b886bb6af2b28d3b43f6e536270ad2128348cdc64736f6c63430008120033"; static readonly abi: { inputs: { internalType: string; diff --git a/src/adapter/factories/utils/SignatureValidator__factory.js b/src/adapter/factories/utils/SignatureValidator__factory.js index 140cc16..c35383a 100644 --- a/src/adapter/factories/utils/SignatureValidator__factory.js +++ b/src/adapter/factories/utils/SignatureValidator__factory.js @@ -38,7 +38,7 @@ const _abi = [ type: "function", }, ]; -const _bytecode = "0x608060405234801561001057600080fd5b50610daf806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063fa4e12d714610030575b600080fd5b61004361003e366004610b39565b610057565b604051901515815260200160405180910390f35b600080825111610114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff85166101b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e455200000000000000000000000000606482015260840161010b565b60006101c2836108a5565b60f81c905060058110610257576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b60008160ff16600581111561026e5761026e610bd2565b905060008080808085600581111561028857610288610bd2565b03610315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e415455524500000000000000000000606482015260840161010b565b600185600581111561032957610329610bd2565b0361049b5787516061146103bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6103ca8860006109a8565b92506103d78860206109a8565b9150876040815181106103ec576103ec610c01565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa158015610449573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061089d9650505050505050565b60028560058111156104af576104af610bd2565b03610615578751606114610545576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6105508860006109a8565b925061055d8860206109a8565b91508760408151811061057257610572610c01565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001610427565b600385600581111561062957610629610bd2565b03610715576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90610682908c908c90600401610c94565b602060405180830381865afa15801561069f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b600485600581111561072957610729610bd2565b03610815576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90610782908d908c90600401610d0b565b602060405180830381865afa15801561079f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b949350505050565b600080825111610937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f5245515549524544000000000000000000606482015260840161010b565b81600183516109469190610d53565b8151811061095657610956610c01565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b60006109b5826020610d66565b83511015610a45576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f524551554952454400000000606482015260840161010b565b610a50602083610d66565b91508183015190505b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610a9f57600080fd5b813567ffffffffffffffff80821115610aba57610aba610a5f565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715610b0057610b00610a5f565b81604052838152866020858801011115610b1957600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610b4f57600080fd5b843573ffffffffffffffffffffffffffffffffffffffff81168114610b7357600080fd5b935060208501359250604085013567ffffffffffffffff80821115610b9757600080fd5b610ba388838901610a8e565b93506060870135915080821115610bb957600080fd5b50610bc687828801610a8e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b81811015610c5657602081850181015186830182015201610c3a565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b604081526000610ca76040830185610c30565b8281036020840152610cb98185610c30565b95945050505050565b600060208284031215610cd457600080fd5b81517fffffffff0000000000000000000000000000000000000000000000000000000081168114610d0457600080fd5b9392505050565b82815260406020820152600061089d6040830184610c30565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610a5957610a59610d24565b80820180821115610a5957610a59610d2456fea2646970667358221220a455b2e2b2e81ba33e9695422a8189f870b6c585b635e5b39875d139b9e2220c64736f6c63430008120033"; +const _bytecode = "0x608060405234801561001057600080fd5b50610daf806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063fa4e12d714610030575b600080fd5b61004361003e366004610b39565b610057565b604051901515815260200160405180910390f35b600080825111610114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff85166101b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e455200000000000000000000000000606482015260840161010b565b60006101c2836108a5565b60f81c905060058110610257576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b60008160ff16600581111561026e5761026e610bd2565b905060008080808085600581111561028857610288610bd2565b03610315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e415455524500000000000000000000606482015260840161010b565b600185600581111561032957610329610bd2565b0361049b5787516061146103bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6103ca8860006109a8565b92506103d78860206109a8565b9150876040815181106103ec576103ec610c01565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa158015610449573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061089d9650505050505050565b60028560058111156104af576104af610bd2565b03610615578751606114610545576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6105508860006109a8565b925061055d8860206109a8565b91508760408151811061057257610572610c01565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001610427565b600385600581111561062957610629610bd2565b03610715576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90610682908c908c90600401610c94565b602060405180830381865afa15801561069f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b600485600581111561072957610729610bd2565b03610815576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90610782908d908c90600401610d0b565b602060405180830381865afa15801561079f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b949350505050565b600080825111610937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f5245515549524544000000000000000000606482015260840161010b565b81600183516109469190610d53565b8151811061095657610956610c01565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b60006109b5826020610d66565b83511015610a45576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f524551554952454400000000606482015260840161010b565b610a50602083610d66565b91508183015190505b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610a9f57600080fd5b813567ffffffffffffffff80821115610aba57610aba610a5f565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715610b0057610b00610a5f565b81604052838152866020858801011115610b1957600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610b4f57600080fd5b843573ffffffffffffffffffffffffffffffffffffffff81168114610b7357600080fd5b935060208501359250604085013567ffffffffffffffff80821115610b9757600080fd5b610ba388838901610a8e565b93506060870135915080821115610bb957600080fd5b50610bc687828801610a8e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b81811015610c5657602081850181015186830182015201610c3a565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b604081526000610ca76040830185610c30565b8281036020840152610cb98185610c30565b95945050505050565b600060208284031215610cd457600080fd5b81517fffffffff0000000000000000000000000000000000000000000000000000000081168114610d0457600080fd5b9392505050565b82815260406020820152600061089d6040830184610c30565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610a5957610a59610d24565b80820180821115610a5957610a59610d2456fea2646970667358221220cfa16dba9e200d86917fa30f1b886bb6af2b28d3b43f6e536270ad2128348cdc64736f6c63430008120033"; const isSuperArgs = (xs) => xs.length > 1; export class SignatureValidator__factory extends ContractFactory { constructor(...args) { diff --git a/src/artifacts/contracts/mocks/ERC1155MetaMintBurnMock.sol/ERC1155MetaMintBurnMock.json b/src/artifacts/contracts/mocks/ERC1155MetaMintBurnMock.sol/ERC1155MetaMintBurnMock.json index 1e51d56..d7c19cc 100644 --- a/src/artifacts/contracts/mocks/ERC1155MetaMintBurnMock.sol/ERC1155MetaMintBurnMock.json +++ b/src/artifacts/contracts/mocks/ERC1155MetaMintBurnMock.sol/ERC1155MetaMintBurnMock.json @@ -645,8 +645,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b506040516200418538038062004185833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b613e1280620003736000396000f3fe608060405234801561001057600080fd5b50600436106101505760003560e01c8063a22cb465116100cd578063d7a0ad9011610081578063f242432a11610066578063f242432a1461038f578063f5d4c820146103a2578063fa4e12d7146103b557610150565b8063d7a0ad9014610333578063e985e9c51461034657610150565b8063a3f091f5116100b2578063a3f091f5146102fa578063bd7a6c411461030d578063ce0b514b1461032057610150565b8063a22cb465146102d4578063a3d4926e146102e757610150565b80632d0335ab11610124578063437ecbe911610109578063437ecbe9146102995780634e1273f4146102ac5780636c0360eb146102cc57610150565b80632d0335ab1461024e5780632eb2c2d61461028457610150565b8062fdd58e146101dd57806301ffc9a71461020357806306fdde03146102265780630e89341c1461023b575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f455243313135354d6574614d696e744275726e4d6f636b3a20494e56414c494460448201527f5f4d4554484f440000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101f06101eb366004612e33565b6103c8565b6040519081526020015b60405180910390f35b610216610211366004612e8d565b6103fe565b60405190151581526020016101fa565b61022e610409565b6040516101fa9190612f18565b61022e610249366004612f2b565b610497565b6101f061025c366004612f44565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b610297610292366004613105565b6104cb565b005b6102976102a73660046131b3565b61066f565b6102bf6102ba3660046131e8565b61067f565b6040516101fa91906132e5565b61022e61081f565b6102976102e2366004613306565b61082c565b6102976102f536600461333f565b6108c3565b610297610308366004613400565b610af5565b61029761031b366004613463565b610b07565b61029761032e3660046134d9565b610b12565b610297610341366004613553565b610c80565b6102166103543660046135e2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61029761039d366004613610565b610c8c565b6102976103b0366004613679565b610e29565b6102166103c33660046136e8565b610f80565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103f8826117c9565b6004805461041690613739565b80601f016020809104026020016040519081016040528092919081815260200182805461044290613739565b801561048f5780601f106104645761010080835404028352916020019161048f565b820191906000526020600020905b81548152906001019060200180831161047257829003601f168201915b505050505081565b606060036104a483611825565b6040516020016104b59291906137a8565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff8616148061051f575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff841661064e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016101d4565b61065a85858585611985565b610668858585855a86611bea565b5050505050565b61067a838383611d69565b505050565b60608151835114610712576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016101d4565b6000835167ffffffffffffffff81111561072e5761072e612f61565b604051908082528060200260200182016040528015610757578160200160208202803683370190505b50905060005b84518110156108175760008086838151811061077b5761077b6138b5565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107d1576107d16138b5565b60200260200101518152602001908152602001600020548282815181106107fa576107fa6138b5565b60209081029190910101528061080f81613913565b91505061075d565b509392505050565b6003805461041690613739565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101d4565b60606109a960405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a8b89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c6040516020016109e7919061394b565b604051602081830303815290604052805190602001208c604051602001610a0e919061394b565b604051602081830303815290604052805190602001208c610a30576000610a33565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e07565b9050610a9989898989611985565b8415610adc5780806020019051810190610ab39190613a55565b8094508193505050610acd89898989866020015188611bea565b610ad78983612097565b610aea565b610aea898989895a86611bea565b505050505050505050565b610b018484848461240a565b50505050565b61067a8383836124b2565b73ffffffffffffffffffffffffffffffffffffffff8516610bb5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016101d4565b6060610bf860405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3089857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a30576000610a33565b9050610c3e8989898961267e565b8415610c725780806020019051810190610c589190613a55565b8094508193505050610acd89898989866020015188612759565b610aea898989895a86612759565b610b01848484846128d8565b3373ffffffffffffffffffffffffffffffffffffffff86161480610ce0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610d6c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff8416610e0f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016101d4565b610e1b8585858561267e565b610668858585855a86612759565b6000610eb486837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610e5f576000610e62565b60015b89610e6e576000610e71565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610a77565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610f7857600081806020019051810190610f6a9190613aaf565b9050610f768782612097565b505b505050505050565b600080825111611038576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101d4565b73ffffffffffffffffffffffffffffffffffffffff85166110db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101d4565b60006110e683612aae565b60f81c90506005811061117b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b60008160ff16600581111561119257611192613ae4565b90506000808080808560058111156111ac576111ac613ae4565b03611239576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101d4565b600185600581111561124d5761124d613ae4565b036113bf5787516061146112e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b6112ee886000612bb1565b92506112fb886020612bb1565b915087604081518110611310576113106138b5565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561136d573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506117c19650505050505050565b60028560058111156113d3576113d3613ae4565b03611539578751606114611469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b611474886000612bb1565b9250611481886020612bb1565b915087604081518110611496576114966138b5565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a00161134b565b600385600581111561154d5761154d613ae4565b03611639576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906115a6908c908c90600401613b13565b602060405180830381865afa1580156115c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b600485600581111561164d5761164d613ae4565b03611739576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906116a6908d908c90600401613b55565b602060405180830381865afa1580156116c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161181c57506001919050565b6103f882612c64565b60608160000361186857505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611892578061187c81613913565b915061188b9050600a83613b6e565b915061186c565b60008167ffffffffffffffff8111156118ad576118ad612f61565b6040519080825280601f01601f1916602001820160405280156118d7576020820181803683370190505b509050815b851561197c576118ed600182613ba9565b905060006118fc600a88613b6e565b61190790600a613bbc565b6119119088613ba9565b61191c906030613bd3565b905060008160f81b905080848481518110611939576119396138b5565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611973600a89613b6e565b975050506118dc565b50949350505050565b8051825114611a16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016101d4565b815160005b81811015611b6457828181518110611a3557611a356138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611a8f57611a8f6138b5565b602002602001015181526020019081526020016000206000828254611ab49190613ba9565b92505081905550828181518110611acd57611acd6138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611b2757611b276138b5565b602002602001015181526020019081526020016000206000828254611b4c9190613bec565b90915550819050611b5c81613913565b915050611a1b565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611bdb929190613bff565b60405180910390a45050505050565b611c098573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611c52959493929190613c24565b60206040518083038160008887f1158015611c71573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c969190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611da7908490613ba9565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b60608083806020019051810190611e1e9190613c8f565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e56836041612bb1565b9050818110801590611e715750611e6e826064613bec565b81105b611efd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016101d4565b6000611f3986838780519060200120604051602001611f1e93929190613cc6565b60405160208183030381529060405280519060200120612d3b565b90506000868387604051602001611f5293929190613ced565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611f8d836001613bec565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611fe2856001613bec565b60405190815260200160405180910390a2611fff89838388610f80565b61208b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016101d4565b50505050509392505050565b60006120a68260600151612aae565b60f81c90506002811061213b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016101d4565b60008160ff16600281111561215257612152613ae4565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff161561218857866040015161218a565b335b925060008560028111156121a0576121a0613ae4565b036122b75786606001518060200190518101906121bd9190613d24565b90945091503073ffffffffffffffffffffffffffffffffffffffff85160361220d576121eb8884848461267e565b6122088884845a8560405180602001604052806000815250612759565b612400565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b15801561229a57600080fd5b505af11580156122ae573d6000803e3d6000fd5b50505050612400565b86606001518060200190518101906122cf9190613d52565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612350573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123749190613d6f565b612400576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016101d4565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832086845290915281208054849290612448908490613bec565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610b0160008585855a86612759565b815181518114612544576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b60005b818110156125f857828181518110612561576125616138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106125bb576125bb6138b5565b6020026020010151815260200190815260200160002060008282546125e09190613ba9565b909155508190506125f081613913565b915050612547565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612670929190613bff565b60405180910390a450505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906126bc908490613ba9565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906126ff908490613bec565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612670565b6127788573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016127c1959493929190613d8c565b60206040518083038160008887f11580156127e0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906128059190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016101d4565b8151835114612969576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b825160005b81811015612a1f57838181518110612988576129886138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106129e2576129e26138b5565b602002602001015181526020019081526020016000206000828254612a079190613bec565b90915550819050612a1781613913565b91505061296e565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051612a97929190613bff565b60405180910390a461066860008686865a87611bea565b600080825111612b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101d4565b8160018351612b4f9190613ba9565b81518110612b5f57612b5f6138b5565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612bbe826020613bec565b83511015612c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101d4565b612c59602083613bec565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601612cb757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103f8565b6000813f8015801590612d3457507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612dc892919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612df193929190613cc6565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff81168114612e3057600080fd5b50565b60008060408385031215612e4657600080fd5b8235612e5181612e0e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612e3057600080fd5b600060208284031215612e9f57600080fd5b8135612d3481612e5f565b60005b83811015612ec5578181015183820152602001612ead565b50506000910152565b60008151808452612ee6816020860160208601612eaa565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000612d346020830184612ece565b600060208284031215612f3d57600080fd5b5035919050565b600060208284031215612f5657600080fd5b8135612d3481612e0e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612fd757612fd7612f61565b604052919050565b600067ffffffffffffffff821115612ff957612ff9612f61565b5060051b60200190565b600082601f83011261301457600080fd5b8135602061302961302483612fdf565b612f90565b82815260059290921b8401810191818101908684111561304857600080fd5b8286015b84811015613063578035835291830191830161304c565b509695505050505050565b600067ffffffffffffffff82111561308857613088612f61565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126130c557600080fd5b81356130d36130248261306e565b8181528460208386010111156130e857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561311d57600080fd5b853561312881612e0e565b9450602086013561313881612e0e565b9350604086013567ffffffffffffffff8082111561315557600080fd5b61316189838a01613003565b9450606088013591508082111561317757600080fd5b61318389838a01613003565b9350608088013591508082111561319957600080fd5b506131a6888289016130b4565b9150509295509295909350565b6000806000606084860312156131c857600080fd5b83356131d381612e0e565b95602085013595506040909401359392505050565b600080604083850312156131fb57600080fd5b823567ffffffffffffffff8082111561321357600080fd5b818501915085601f83011261322757600080fd5b8135602061323761302483612fdf565b82815260059290921b8401810191818101908984111561325657600080fd5b948201945b8386101561327d57853561326e81612e0e565b8252948201949082019061325b565b9650508601359250508082111561329357600080fd5b506132a085828601613003565b9150509250929050565b600081518084526020808501945080840160005b838110156132da578151875295820195908201906001016132be565b509495945050505050565b602081526000612d3460208301846132aa565b8015158114612e3057600080fd5b6000806040838503121561331957600080fd5b823561332481612e0e565b91506020830135613334816132f8565b809150509250929050565b60008060008060008060c0878903121561335857600080fd5b863561336381612e0e565b9550602087013561337381612e0e565b9450604087013567ffffffffffffffff8082111561339057600080fd5b61339c8a838b01613003565b955060608901359150808211156133b257600080fd5b6133be8a838b01613003565b9450608089013591506133d0826132f8565b90925060a088013590808211156133e657600080fd5b506133f389828a016130b4565b9150509295509295509295565b6000806000806080858703121561341657600080fd5b843561342181612e0e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561344b57600080fd5b613457878288016130b4565b91505092959194509250565b60008060006060848603121561347857600080fd5b833561348381612e0e565b9250602084013567ffffffffffffffff808211156134a057600080fd5b6134ac87838801613003565b935060408601359150808211156134c257600080fd5b506134cf86828701613003565b9150509250925092565b60008060008060008060c087890312156134f257600080fd5b86356134fd81612e0e565b9550602087013561350d81612e0e565b94506040870135935060608701359250608087013561352b816132f8565b915060a087013567ffffffffffffffff81111561354757600080fd5b6133f389828a016130b4565b6000806000806080858703121561356957600080fd5b843561357481612e0e565b9350602085013567ffffffffffffffff8082111561359157600080fd5b61359d88838901613003565b945060408701359150808211156135b357600080fd5b6135bf88838901613003565b935060608701359150808211156135d557600080fd5b50613457878288016130b4565b600080604083850312156135f557600080fd5b823561360081612e0e565b9150602083013561333481612e0e565b600080600080600060a0868803121561362857600080fd5b853561363381612e0e565b9450602086013561364381612e0e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561366d57600080fd5b6131a6888289016130b4565b600080600080600060a0868803121561369157600080fd5b853561369c81612e0e565b945060208601356136ac81612e0e565b935060408601356136bc816132f8565b925060608601356136cc816132f8565b9150608086013567ffffffffffffffff81111561366d57600080fd5b600080600080608085870312156136fe57600080fd5b843561370981612e0e565b935060208501359250604085013567ffffffffffffffff8082111561372d57600080fd5b6135bf888389016130b4565b600181811c9082168061374d57607f821691505b602082108103613786577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000815161379e818560208601612eaa565b9290920192915050565b600080845481600182811c9150808316806137c457607f831692505b602080841082036137fc577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613810576001811461384357613870565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613870565b60008b81526020902060005b868110156138685781548b82015290850190830161384f565b505084890196505b5050505050506138ac613883828661378c565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613944576139446138e4565b5060010190565b815160009082906020808601845b8381101561397557815185529382019390820190600101613959565b50929695505050505050565b600082601f83011261399257600080fd5b81516139a06130248261306e565b8181528460208386010111156139b557600080fd5b6117c1826020830160208701612eaa565b6000608082840312156139d857600080fd5b6040516080810167ffffffffffffffff82821081831117156139fc576139fc612f61565b81604052829350845183526020850151602084015260408501519150613a2182612e0e565b8160408401526060850151915080821115613a3b57600080fd5b50613a4885828601613981565b6060830152505092915050565b60008060408385031215613a6857600080fd5b825167ffffffffffffffff80821115613a8057600080fd5b613a8c868387016139c6565b93506020850151915080821115613aa257600080fd5b506132a085828601613981565b600060208284031215613ac157600080fd5b815167ffffffffffffffff811115613ad857600080fd5b6117c1848285016139c6565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613b266040830185612ece565b82810360208401526138ac8185612ece565b600060208284031215613b4a57600080fd5b8151612d3481612e5f565b8281526040602082015260006117c16040830184612ece565b600082613ba4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103f8576103f86138e4565b80820281158282048414176103f8576103f86138e4565b60ff81811683821601908111156103f8576103f86138e4565b808201808211156103f8576103f86138e4565b604081526000613c1260408301856132aa565b82810360208401526138ac81856132aa565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152613c5d60a08301866132aa565b8281036060840152613c6f81866132aa565b90508281036080840152613c838185612ece565b98975050505050505050565b60008060408385031215613ca257600080fd5b825167ffffffffffffffff80821115613cba57600080fd5b613a8c86838701613981565b60008451613cd8818460208901612eaa565b91909101928352506020820152604001919050565b60008451613cff818460208901612eaa565b82018481528351613d17816020808501908801612eaa565b0160200195945050505050565b60008060408385031215613d3757600080fd5b8251613d4281612e0e565b6020939093015192949293505050565b600060208284031215613d6457600080fd5b8151612d3481612e0e565b600060208284031215613d8157600080fd5b8151612d34816132f8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152613dd160a0830184612ece565b97965050505050505056fea26469706673582212205306b4e949a6923f7983043c5127cdc6d23f300b14663f2cafd0d536e15009c564736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101505760003560e01c8063a22cb465116100cd578063d7a0ad9011610081578063f242432a11610066578063f242432a1461038f578063f5d4c820146103a2578063fa4e12d7146103b557610150565b8063d7a0ad9014610333578063e985e9c51461034657610150565b8063a3f091f5116100b2578063a3f091f5146102fa578063bd7a6c411461030d578063ce0b514b1461032057610150565b8063a22cb465146102d4578063a3d4926e146102e757610150565b80632d0335ab11610124578063437ecbe911610109578063437ecbe9146102995780634e1273f4146102ac5780636c0360eb146102cc57610150565b80632d0335ab1461024e5780632eb2c2d61461028457610150565b8062fdd58e146101dd57806301ffc9a71461020357806306fdde03146102265780630e89341c1461023b575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f455243313135354d6574614d696e744275726e4d6f636b3a20494e56414c494460448201527f5f4d4554484f440000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101f06101eb366004612e33565b6103c8565b6040519081526020015b60405180910390f35b610216610211366004612e8d565b6103fe565b60405190151581526020016101fa565b61022e610409565b6040516101fa9190612f18565b61022e610249366004612f2b565b610497565b6101f061025c366004612f44565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b610297610292366004613105565b6104cb565b005b6102976102a73660046131b3565b61066f565b6102bf6102ba3660046131e8565b61067f565b6040516101fa91906132e5565b61022e61081f565b6102976102e2366004613306565b61082c565b6102976102f536600461333f565b6108c3565b610297610308366004613400565b610af5565b61029761031b366004613463565b610b07565b61029761032e3660046134d9565b610b12565b610297610341366004613553565b610c80565b6102166103543660046135e2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61029761039d366004613610565b610c8c565b6102976103b0366004613679565b610e29565b6102166103c33660046136e8565b610f80565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103f8826117c9565b6004805461041690613739565b80601f016020809104026020016040519081016040528092919081815260200182805461044290613739565b801561048f5780601f106104645761010080835404028352916020019161048f565b820191906000526020600020905b81548152906001019060200180831161047257829003601f168201915b505050505081565b606060036104a483611825565b6040516020016104b59291906137a8565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff8616148061051f575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff841661064e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016101d4565b61065a85858585611985565b610668858585855a86611bea565b5050505050565b61067a838383611d69565b505050565b60608151835114610712576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016101d4565b6000835167ffffffffffffffff81111561072e5761072e612f61565b604051908082528060200260200182016040528015610757578160200160208202803683370190505b50905060005b84518110156108175760008086838151811061077b5761077b6138b5565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107d1576107d16138b5565b60200260200101518152602001908152602001600020548282815181106107fa576107fa6138b5565b60209081029190910101528061080f81613913565b91505061075d565b509392505050565b6003805461041690613739565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101d4565b60606109a960405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a8b89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c6040516020016109e7919061394b565b604051602081830303815290604052805190602001208c604051602001610a0e919061394b565b604051602081830303815290604052805190602001208c610a30576000610a33565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e07565b9050610a9989898989611985565b8415610adc5780806020019051810190610ab39190613a55565b8094508193505050610acd89898989866020015188611bea565b610ad78983612097565b610aea565b610aea898989895a86611bea565b505050505050505050565b610b018484848461240a565b50505050565b61067a8383836124b2565b73ffffffffffffffffffffffffffffffffffffffff8516610bb5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016101d4565b6060610bf860405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3089857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a30576000610a33565b9050610c3e8989898961267e565b8415610c725780806020019051810190610c589190613a55565b8094508193505050610acd89898989866020015188612759565b610aea898989895a86612759565b610b01848484846128d8565b3373ffffffffffffffffffffffffffffffffffffffff86161480610ce0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610d6c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff8416610e0f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016101d4565b610e1b8585858561267e565b610668858585855a86612759565b6000610eb486837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610e5f576000610e62565b60015b89610e6e576000610e71565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610a77565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610f7857600081806020019051810190610f6a9190613aaf565b9050610f768782612097565b505b505050505050565b600080825111611038576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101d4565b73ffffffffffffffffffffffffffffffffffffffff85166110db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101d4565b60006110e683612aae565b60f81c90506005811061117b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b60008160ff16600581111561119257611192613ae4565b90506000808080808560058111156111ac576111ac613ae4565b03611239576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101d4565b600185600581111561124d5761124d613ae4565b036113bf5787516061146112e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b6112ee886000612bb1565b92506112fb886020612bb1565b915087604081518110611310576113106138b5565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561136d573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506117c19650505050505050565b60028560058111156113d3576113d3613ae4565b03611539578751606114611469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b611474886000612bb1565b9250611481886020612bb1565b915087604081518110611496576114966138b5565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a00161134b565b600385600581111561154d5761154d613ae4565b03611639576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906115a6908c908c90600401613b13565b602060405180830381865afa1580156115c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b600485600581111561164d5761164d613ae4565b03611739576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906116a6908d908c90600401613b55565b602060405180830381865afa1580156116c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161181c57506001919050565b6103f882612c64565b60608160000361186857505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611892578061187c81613913565b915061188b9050600a83613b6e565b915061186c565b60008167ffffffffffffffff8111156118ad576118ad612f61565b6040519080825280601f01601f1916602001820160405280156118d7576020820181803683370190505b509050815b851561197c576118ed600182613ba9565b905060006118fc600a88613b6e565b61190790600a613bbc565b6119119088613ba9565b61191c906030613bd3565b905060008160f81b905080848481518110611939576119396138b5565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611973600a89613b6e565b975050506118dc565b50949350505050565b8051825114611a16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016101d4565b815160005b81811015611b6457828181518110611a3557611a356138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611a8f57611a8f6138b5565b602002602001015181526020019081526020016000206000828254611ab49190613ba9565b92505081905550828181518110611acd57611acd6138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611b2757611b276138b5565b602002602001015181526020019081526020016000206000828254611b4c9190613bec565b90915550819050611b5c81613913565b915050611a1b565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611bdb929190613bff565b60405180910390a45050505050565b611c098573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611c52959493929190613c24565b60206040518083038160008887f1158015611c71573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c969190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611da7908490613ba9565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b60608083806020019051810190611e1e9190613c8f565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e56836041612bb1565b9050818110801590611e715750611e6e826064613bec565b81105b611efd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016101d4565b6000611f3986838780519060200120604051602001611f1e93929190613cc6565b60405160208183030381529060405280519060200120612d3b565b90506000868387604051602001611f5293929190613ced565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611f8d836001613bec565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611fe2856001613bec565b60405190815260200160405180910390a2611fff89838388610f80565b61208b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016101d4565b50505050509392505050565b60006120a68260600151612aae565b60f81c90506002811061213b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016101d4565b60008160ff16600281111561215257612152613ae4565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff161561218857866040015161218a565b335b925060008560028111156121a0576121a0613ae4565b036122b75786606001518060200190518101906121bd9190613d24565b90945091503073ffffffffffffffffffffffffffffffffffffffff85160361220d576121eb8884848461267e565b6122088884845a8560405180602001604052806000815250612759565b612400565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b15801561229a57600080fd5b505af11580156122ae573d6000803e3d6000fd5b50505050612400565b86606001518060200190518101906122cf9190613d52565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612350573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123749190613d6f565b612400576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016101d4565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832086845290915281208054849290612448908490613bec565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610b0160008585855a86612759565b815181518114612544576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b60005b818110156125f857828181518110612561576125616138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106125bb576125bb6138b5565b6020026020010151815260200190815260200160002060008282546125e09190613ba9565b909155508190506125f081613913565b915050612547565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612670929190613bff565b60405180910390a450505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906126bc908490613ba9565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906126ff908490613bec565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612670565b6127788573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016127c1959493929190613d8c565b60206040518083038160008887f11580156127e0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906128059190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016101d4565b8151835114612969576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b825160005b81811015612a1f57838181518110612988576129886138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106129e2576129e26138b5565b602002602001015181526020019081526020016000206000828254612a079190613bec565b90915550819050612a1781613913565b91505061296e565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051612a97929190613bff565b60405180910390a461066860008686865a87611bea565b600080825111612b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101d4565b8160018351612b4f9190613ba9565b81518110612b5f57612b5f6138b5565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612bbe826020613bec565b83511015612c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101d4565b612c59602083613bec565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601612cb757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103f8565b6000813f8015801590612d3457507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612dc892919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612df193929190613cc6565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff81168114612e3057600080fd5b50565b60008060408385031215612e4657600080fd5b8235612e5181612e0e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612e3057600080fd5b600060208284031215612e9f57600080fd5b8135612d3481612e5f565b60005b83811015612ec5578181015183820152602001612ead565b50506000910152565b60008151808452612ee6816020860160208601612eaa565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000612d346020830184612ece565b600060208284031215612f3d57600080fd5b5035919050565b600060208284031215612f5657600080fd5b8135612d3481612e0e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612fd757612fd7612f61565b604052919050565b600067ffffffffffffffff821115612ff957612ff9612f61565b5060051b60200190565b600082601f83011261301457600080fd5b8135602061302961302483612fdf565b612f90565b82815260059290921b8401810191818101908684111561304857600080fd5b8286015b84811015613063578035835291830191830161304c565b509695505050505050565b600067ffffffffffffffff82111561308857613088612f61565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126130c557600080fd5b81356130d36130248261306e565b8181528460208386010111156130e857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561311d57600080fd5b853561312881612e0e565b9450602086013561313881612e0e565b9350604086013567ffffffffffffffff8082111561315557600080fd5b61316189838a01613003565b9450606088013591508082111561317757600080fd5b61318389838a01613003565b9350608088013591508082111561319957600080fd5b506131a6888289016130b4565b9150509295509295909350565b6000806000606084860312156131c857600080fd5b83356131d381612e0e565b95602085013595506040909401359392505050565b600080604083850312156131fb57600080fd5b823567ffffffffffffffff8082111561321357600080fd5b818501915085601f83011261322757600080fd5b8135602061323761302483612fdf565b82815260059290921b8401810191818101908984111561325657600080fd5b948201945b8386101561327d57853561326e81612e0e565b8252948201949082019061325b565b9650508601359250508082111561329357600080fd5b506132a085828601613003565b9150509250929050565b600081518084526020808501945080840160005b838110156132da578151875295820195908201906001016132be565b509495945050505050565b602081526000612d3460208301846132aa565b8015158114612e3057600080fd5b6000806040838503121561331957600080fd5b823561332481612e0e565b91506020830135613334816132f8565b809150509250929050565b60008060008060008060c0878903121561335857600080fd5b863561336381612e0e565b9550602087013561337381612e0e565b9450604087013567ffffffffffffffff8082111561339057600080fd5b61339c8a838b01613003565b955060608901359150808211156133b257600080fd5b6133be8a838b01613003565b9450608089013591506133d0826132f8565b90925060a088013590808211156133e657600080fd5b506133f389828a016130b4565b9150509295509295509295565b6000806000806080858703121561341657600080fd5b843561342181612e0e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561344b57600080fd5b613457878288016130b4565b91505092959194509250565b60008060006060848603121561347857600080fd5b833561348381612e0e565b9250602084013567ffffffffffffffff808211156134a057600080fd5b6134ac87838801613003565b935060408601359150808211156134c257600080fd5b506134cf86828701613003565b9150509250925092565b60008060008060008060c087890312156134f257600080fd5b86356134fd81612e0e565b9550602087013561350d81612e0e565b94506040870135935060608701359250608087013561352b816132f8565b915060a087013567ffffffffffffffff81111561354757600080fd5b6133f389828a016130b4565b6000806000806080858703121561356957600080fd5b843561357481612e0e565b9350602085013567ffffffffffffffff8082111561359157600080fd5b61359d88838901613003565b945060408701359150808211156135b357600080fd5b6135bf88838901613003565b935060608701359150808211156135d557600080fd5b50613457878288016130b4565b600080604083850312156135f557600080fd5b823561360081612e0e565b9150602083013561333481612e0e565b600080600080600060a0868803121561362857600080fd5b853561363381612e0e565b9450602086013561364381612e0e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561366d57600080fd5b6131a6888289016130b4565b600080600080600060a0868803121561369157600080fd5b853561369c81612e0e565b945060208601356136ac81612e0e565b935060408601356136bc816132f8565b925060608601356136cc816132f8565b9150608086013567ffffffffffffffff81111561366d57600080fd5b600080600080608085870312156136fe57600080fd5b843561370981612e0e565b935060208501359250604085013567ffffffffffffffff8082111561372d57600080fd5b6135bf888389016130b4565b600181811c9082168061374d57607f821691505b602082108103613786577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000815161379e818560208601612eaa565b9290920192915050565b600080845481600182811c9150808316806137c457607f831692505b602080841082036137fc577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613810576001811461384357613870565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613870565b60008b81526020902060005b868110156138685781548b82015290850190830161384f565b505084890196505b5050505050506138ac613883828661378c565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613944576139446138e4565b5060010190565b815160009082906020808601845b8381101561397557815185529382019390820190600101613959565b50929695505050505050565b600082601f83011261399257600080fd5b81516139a06130248261306e565b8181528460208386010111156139b557600080fd5b6117c1826020830160208701612eaa565b6000608082840312156139d857600080fd5b6040516080810167ffffffffffffffff82821081831117156139fc576139fc612f61565b81604052829350845183526020850151602084015260408501519150613a2182612e0e565b8160408401526060850151915080821115613a3b57600080fd5b50613a4885828601613981565b6060830152505092915050565b60008060408385031215613a6857600080fd5b825167ffffffffffffffff80821115613a8057600080fd5b613a8c868387016139c6565b93506020850151915080821115613aa257600080fd5b506132a085828601613981565b600060208284031215613ac157600080fd5b815167ffffffffffffffff811115613ad857600080fd5b6117c1848285016139c6565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613b266040830185612ece565b82810360208401526138ac8185612ece565b600060208284031215613b4a57600080fd5b8151612d3481612e5f565b8281526040602082015260006117c16040830184612ece565b600082613ba4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103f8576103f86138e4565b80820281158282048414176103f8576103f86138e4565b60ff81811683821601908111156103f8576103f86138e4565b808201808211156103f8576103f86138e4565b604081526000613c1260408301856132aa565b82810360208401526138ac81856132aa565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152613c5d60a08301866132aa565b8281036060840152613c6f81866132aa565b90508281036080840152613c838185612ece565b98975050505050505050565b60008060408385031215613ca257600080fd5b825167ffffffffffffffff80821115613cba57600080fd5b613a8c86838701613981565b60008451613cd8818460208901612eaa565b91909101928352506020820152604001919050565b60008451613cff818460208901612eaa565b82018481528351613d17816020808501908801612eaa565b0160200195945050505050565b60008060408385031215613d3757600080fd5b8251613d4281612e0e565b6020939093015192949293505050565b600060208284031215613d6457600080fd5b8151612d3481612e0e565b600060208284031215613d8157600080fd5b8151612d34816132f8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152613dd160a0830184612ece565b97965050505050505056fea26469706673582212205306b4e949a6923f7983043c5127cdc6d23f300b14663f2cafd0d536e15009c564736f6c63430008120033", + "bytecode": "0x60806040523480156200001157600080fd5b506040516200418538038062004185833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b613e1280620003736000396000f3fe608060405234801561001057600080fd5b50600436106101505760003560e01c8063a22cb465116100cd578063d7a0ad9011610081578063f242432a11610066578063f242432a1461038f578063f5d4c820146103a2578063fa4e12d7146103b557610150565b8063d7a0ad9014610333578063e985e9c51461034657610150565b8063a3f091f5116100b2578063a3f091f5146102fa578063bd7a6c411461030d578063ce0b514b1461032057610150565b8063a22cb465146102d4578063a3d4926e146102e757610150565b80632d0335ab11610124578063437ecbe911610109578063437ecbe9146102995780634e1273f4146102ac5780636c0360eb146102cc57610150565b80632d0335ab1461024e5780632eb2c2d61461028457610150565b8062fdd58e146101dd57806301ffc9a71461020357806306fdde03146102265780630e89341c1461023b575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f455243313135354d6574614d696e744275726e4d6f636b3a20494e56414c494460448201527f5f4d4554484f440000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101f06101eb366004612e33565b6103c8565b6040519081526020015b60405180910390f35b610216610211366004612e8d565b6103fe565b60405190151581526020016101fa565b61022e610409565b6040516101fa9190612f18565b61022e610249366004612f2b565b610497565b6101f061025c366004612f44565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b610297610292366004613105565b6104cb565b005b6102976102a73660046131b3565b61066f565b6102bf6102ba3660046131e8565b61067f565b6040516101fa91906132e5565b61022e61081f565b6102976102e2366004613306565b61082c565b6102976102f536600461333f565b6108c3565b610297610308366004613400565b610af5565b61029761031b366004613463565b610b07565b61029761032e3660046134d9565b610b12565b610297610341366004613553565b610c80565b6102166103543660046135e2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61029761039d366004613610565b610c8c565b6102976103b0366004613679565b610e29565b6102166103c33660046136e8565b610f80565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103f8826117c9565b6004805461041690613739565b80601f016020809104026020016040519081016040528092919081815260200182805461044290613739565b801561048f5780601f106104645761010080835404028352916020019161048f565b820191906000526020600020905b81548152906001019060200180831161047257829003601f168201915b505050505081565b606060036104a483611825565b6040516020016104b59291906137a8565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff8616148061051f575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff841661064e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016101d4565b61065a85858585611985565b610668858585855a86611bea565b5050505050565b61067a838383611d69565b505050565b60608151835114610712576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016101d4565b6000835167ffffffffffffffff81111561072e5761072e612f61565b604051908082528060200260200182016040528015610757578160200160208202803683370190505b50905060005b84518110156108175760008086838151811061077b5761077b6138b5565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107d1576107d16138b5565b60200260200101518152602001908152602001600020548282815181106107fa576107fa6138b5565b60209081029190910101528061080f81613913565b91505061075d565b509392505050565b6003805461041690613739565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101d4565b60606109a960405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a8b89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c6040516020016109e7919061394b565b604051602081830303815290604052805190602001208c604051602001610a0e919061394b565b604051602081830303815290604052805190602001208c610a30576000610a33565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e07565b9050610a9989898989611985565b8415610adc5780806020019051810190610ab39190613a55565b8094508193505050610acd89898989866020015188611bea565b610ad78983612097565b610aea565b610aea898989895a86611bea565b505050505050505050565b610b018484848461240a565b50505050565b61067a8383836124b2565b73ffffffffffffffffffffffffffffffffffffffff8516610bb5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016101d4565b6060610bf860405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3089857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a30576000610a33565b9050610c3e8989898961267e565b8415610c725780806020019051810190610c589190613a55565b8094508193505050610acd89898989866020015188612759565b610aea898989895a86612759565b610b01848484846128d8565b3373ffffffffffffffffffffffffffffffffffffffff86161480610ce0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610d6c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff8416610e0f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016101d4565b610e1b8585858561267e565b610668858585855a86612759565b6000610eb486837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610e5f576000610e62565b60015b89610e6e576000610e71565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610a77565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610f7857600081806020019051810190610f6a9190613aaf565b9050610f768782612097565b505b505050505050565b600080825111611038576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101d4565b73ffffffffffffffffffffffffffffffffffffffff85166110db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101d4565b60006110e683612aae565b60f81c90506005811061117b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b60008160ff16600581111561119257611192613ae4565b90506000808080808560058111156111ac576111ac613ae4565b03611239576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101d4565b600185600581111561124d5761124d613ae4565b036113bf5787516061146112e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b6112ee886000612bb1565b92506112fb886020612bb1565b915087604081518110611310576113106138b5565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561136d573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506117c19650505050505050565b60028560058111156113d3576113d3613ae4565b03611539578751606114611469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b611474886000612bb1565b9250611481886020612bb1565b915087604081518110611496576114966138b5565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a00161134b565b600385600581111561154d5761154d613ae4565b03611639576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906115a6908c908c90600401613b13565b602060405180830381865afa1580156115c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b600485600581111561164d5761164d613ae4565b03611739576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906116a6908d908c90600401613b55565b602060405180830381865afa1580156116c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161181c57506001919050565b6103f882612c64565b60608160000361186857505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611892578061187c81613913565b915061188b9050600a83613b6e565b915061186c565b60008167ffffffffffffffff8111156118ad576118ad612f61565b6040519080825280601f01601f1916602001820160405280156118d7576020820181803683370190505b509050815b851561197c576118ed600182613ba9565b905060006118fc600a88613b6e565b61190790600a613bbc565b6119119088613ba9565b61191c906030613bd3565b905060008160f81b905080848481518110611939576119396138b5565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611973600a89613b6e565b975050506118dc565b50949350505050565b8051825114611a16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016101d4565b815160005b81811015611b6457828181518110611a3557611a356138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611a8f57611a8f6138b5565b602002602001015181526020019081526020016000206000828254611ab49190613ba9565b92505081905550828181518110611acd57611acd6138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611b2757611b276138b5565b602002602001015181526020019081526020016000206000828254611b4c9190613bec565b90915550819050611b5c81613913565b915050611a1b565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611bdb929190613bff565b60405180910390a45050505050565b611c098573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611c52959493929190613c24565b60206040518083038160008887f1158015611c71573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c969190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611da7908490613ba9565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b60608083806020019051810190611e1e9190613c8f565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e56836041612bb1565b9050818110801590611e715750611e6e826064613bec565b81105b611efd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016101d4565b6000611f3986838780519060200120604051602001611f1e93929190613cc6565b60405160208183030381529060405280519060200120612d3b565b90506000868387604051602001611f5293929190613ced565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611f8d836001613bec565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611fe2856001613bec565b60405190815260200160405180910390a2611fff89838388610f80565b61208b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016101d4565b50505050509392505050565b60006120a68260600151612aae565b60f81c90506002811061213b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016101d4565b60008160ff16600281111561215257612152613ae4565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff161561218857866040015161218a565b335b925060008560028111156121a0576121a0613ae4565b036122b75786606001518060200190518101906121bd9190613d24565b90945091503073ffffffffffffffffffffffffffffffffffffffff85160361220d576121eb8884848461267e565b6122088884845a8560405180602001604052806000815250612759565b612400565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b15801561229a57600080fd5b505af11580156122ae573d6000803e3d6000fd5b50505050612400565b86606001518060200190518101906122cf9190613d52565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612350573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123749190613d6f565b612400576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016101d4565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832086845290915281208054849290612448908490613bec565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610b0160008585855a86612759565b815181518114612544576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b60005b818110156125f857828181518110612561576125616138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106125bb576125bb6138b5565b6020026020010151815260200190815260200160002060008282546125e09190613ba9565b909155508190506125f081613913565b915050612547565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612670929190613bff565b60405180910390a450505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906126bc908490613ba9565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906126ff908490613bec565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612670565b6127788573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016127c1959493929190613d8c565b60206040518083038160008887f11580156127e0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906128059190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016101d4565b8151835114612969576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b825160005b81811015612a1f57838181518110612988576129886138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106129e2576129e26138b5565b602002602001015181526020019081526020016000206000828254612a079190613bec565b90915550819050612a1781613913565b91505061296e565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051612a97929190613bff565b60405180910390a461066860008686865a87611bea565b600080825111612b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101d4565b8160018351612b4f9190613ba9565b81518110612b5f57612b5f6138b5565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612bbe826020613bec565b83511015612c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101d4565b612c59602083613bec565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601612cb757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103f8565b6000813f8015801590612d3457507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612dc892919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612df193929190613cc6565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff81168114612e3057600080fd5b50565b60008060408385031215612e4657600080fd5b8235612e5181612e0e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612e3057600080fd5b600060208284031215612e9f57600080fd5b8135612d3481612e5f565b60005b83811015612ec5578181015183820152602001612ead565b50506000910152565b60008151808452612ee6816020860160208601612eaa565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000612d346020830184612ece565b600060208284031215612f3d57600080fd5b5035919050565b600060208284031215612f5657600080fd5b8135612d3481612e0e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612fd757612fd7612f61565b604052919050565b600067ffffffffffffffff821115612ff957612ff9612f61565b5060051b60200190565b600082601f83011261301457600080fd5b8135602061302961302483612fdf565b612f90565b82815260059290921b8401810191818101908684111561304857600080fd5b8286015b84811015613063578035835291830191830161304c565b509695505050505050565b600067ffffffffffffffff82111561308857613088612f61565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126130c557600080fd5b81356130d36130248261306e565b8181528460208386010111156130e857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561311d57600080fd5b853561312881612e0e565b9450602086013561313881612e0e565b9350604086013567ffffffffffffffff8082111561315557600080fd5b61316189838a01613003565b9450606088013591508082111561317757600080fd5b61318389838a01613003565b9350608088013591508082111561319957600080fd5b506131a6888289016130b4565b9150509295509295909350565b6000806000606084860312156131c857600080fd5b83356131d381612e0e565b95602085013595506040909401359392505050565b600080604083850312156131fb57600080fd5b823567ffffffffffffffff8082111561321357600080fd5b818501915085601f83011261322757600080fd5b8135602061323761302483612fdf565b82815260059290921b8401810191818101908984111561325657600080fd5b948201945b8386101561327d57853561326e81612e0e565b8252948201949082019061325b565b9650508601359250508082111561329357600080fd5b506132a085828601613003565b9150509250929050565b600081518084526020808501945080840160005b838110156132da578151875295820195908201906001016132be565b509495945050505050565b602081526000612d3460208301846132aa565b8015158114612e3057600080fd5b6000806040838503121561331957600080fd5b823561332481612e0e565b91506020830135613334816132f8565b809150509250929050565b60008060008060008060c0878903121561335857600080fd5b863561336381612e0e565b9550602087013561337381612e0e565b9450604087013567ffffffffffffffff8082111561339057600080fd5b61339c8a838b01613003565b955060608901359150808211156133b257600080fd5b6133be8a838b01613003565b9450608089013591506133d0826132f8565b90925060a088013590808211156133e657600080fd5b506133f389828a016130b4565b9150509295509295509295565b6000806000806080858703121561341657600080fd5b843561342181612e0e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561344b57600080fd5b613457878288016130b4565b91505092959194509250565b60008060006060848603121561347857600080fd5b833561348381612e0e565b9250602084013567ffffffffffffffff808211156134a057600080fd5b6134ac87838801613003565b935060408601359150808211156134c257600080fd5b506134cf86828701613003565b9150509250925092565b60008060008060008060c087890312156134f257600080fd5b86356134fd81612e0e565b9550602087013561350d81612e0e565b94506040870135935060608701359250608087013561352b816132f8565b915060a087013567ffffffffffffffff81111561354757600080fd5b6133f389828a016130b4565b6000806000806080858703121561356957600080fd5b843561357481612e0e565b9350602085013567ffffffffffffffff8082111561359157600080fd5b61359d88838901613003565b945060408701359150808211156135b357600080fd5b6135bf88838901613003565b935060608701359150808211156135d557600080fd5b50613457878288016130b4565b600080604083850312156135f557600080fd5b823561360081612e0e565b9150602083013561333481612e0e565b600080600080600060a0868803121561362857600080fd5b853561363381612e0e565b9450602086013561364381612e0e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561366d57600080fd5b6131a6888289016130b4565b600080600080600060a0868803121561369157600080fd5b853561369c81612e0e565b945060208601356136ac81612e0e565b935060408601356136bc816132f8565b925060608601356136cc816132f8565b9150608086013567ffffffffffffffff81111561366d57600080fd5b600080600080608085870312156136fe57600080fd5b843561370981612e0e565b935060208501359250604085013567ffffffffffffffff8082111561372d57600080fd5b6135bf888389016130b4565b600181811c9082168061374d57607f821691505b602082108103613786577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000815161379e818560208601612eaa565b9290920192915050565b600080845481600182811c9150808316806137c457607f831692505b602080841082036137fc577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613810576001811461384357613870565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613870565b60008b81526020902060005b868110156138685781548b82015290850190830161384f565b505084890196505b5050505050506138ac613883828661378c565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613944576139446138e4565b5060010190565b815160009082906020808601845b8381101561397557815185529382019390820190600101613959565b50929695505050505050565b600082601f83011261399257600080fd5b81516139a06130248261306e565b8181528460208386010111156139b557600080fd5b6117c1826020830160208701612eaa565b6000608082840312156139d857600080fd5b6040516080810167ffffffffffffffff82821081831117156139fc576139fc612f61565b81604052829350845183526020850151602084015260408501519150613a2182612e0e565b8160408401526060850151915080821115613a3b57600080fd5b50613a4885828601613981565b6060830152505092915050565b60008060408385031215613a6857600080fd5b825167ffffffffffffffff80821115613a8057600080fd5b613a8c868387016139c6565b93506020850151915080821115613aa257600080fd5b506132a085828601613981565b600060208284031215613ac157600080fd5b815167ffffffffffffffff811115613ad857600080fd5b6117c1848285016139c6565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613b266040830185612ece565b82810360208401526138ac8185612ece565b600060208284031215613b4a57600080fd5b8151612d3481612e5f565b8281526040602082015260006117c16040830184612ece565b600082613ba4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103f8576103f86138e4565b80820281158282048414176103f8576103f86138e4565b60ff81811683821601908111156103f8576103f86138e4565b808201808211156103f8576103f86138e4565b604081526000613c1260408301856132aa565b82810360208401526138ac81856132aa565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152613c5d60a08301866132aa565b8281036060840152613c6f81866132aa565b90508281036080840152613c838185612ece565b98975050505050505050565b60008060408385031215613ca257600080fd5b825167ffffffffffffffff80821115613cba57600080fd5b613a8c86838701613981565b60008451613cd8818460208901612eaa565b91909101928352506020820152604001919050565b60008451613cff818460208901612eaa565b82018481528351613d17816020808501908801612eaa565b0160200195945050505050565b60008060408385031215613d3757600080fd5b8251613d4281612e0e565b6020939093015192949293505050565b600060208284031215613d6457600080fd5b8151612d3481612e0e565b600060208284031215613d8157600080fd5b8151612d34816132f8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152613dd160a0830184612ece565b97965050505050505056fea264697066735822122085a984cb87d1882d86be4e4f9921654af97ee515b51188027564f18c6cf69e2a64736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101505760003560e01c8063a22cb465116100cd578063d7a0ad9011610081578063f242432a11610066578063f242432a1461038f578063f5d4c820146103a2578063fa4e12d7146103b557610150565b8063d7a0ad9014610333578063e985e9c51461034657610150565b8063a3f091f5116100b2578063a3f091f5146102fa578063bd7a6c411461030d578063ce0b514b1461032057610150565b8063a22cb465146102d4578063a3d4926e146102e757610150565b80632d0335ab11610124578063437ecbe911610109578063437ecbe9146102995780634e1273f4146102ac5780636c0360eb146102cc57610150565b80632d0335ab1461024e5780632eb2c2d61461028457610150565b8062fdd58e146101dd57806301ffc9a71461020357806306fdde03146102265780630e89341c1461023b575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f455243313135354d6574614d696e744275726e4d6f636b3a20494e56414c494460448201527f5f4d4554484f440000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101f06101eb366004612e33565b6103c8565b6040519081526020015b60405180910390f35b610216610211366004612e8d565b6103fe565b60405190151581526020016101fa565b61022e610409565b6040516101fa9190612f18565b61022e610249366004612f2b565b610497565b6101f061025c366004612f44565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b610297610292366004613105565b6104cb565b005b6102976102a73660046131b3565b61066f565b6102bf6102ba3660046131e8565b61067f565b6040516101fa91906132e5565b61022e61081f565b6102976102e2366004613306565b61082c565b6102976102f536600461333f565b6108c3565b610297610308366004613400565b610af5565b61029761031b366004613463565b610b07565b61029761032e3660046134d9565b610b12565b610297610341366004613553565b610c80565b6102166103543660046135e2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61029761039d366004613610565b610c8c565b6102976103b0366004613679565b610e29565b6102166103c33660046136e8565b610f80565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103f8826117c9565b6004805461041690613739565b80601f016020809104026020016040519081016040528092919081815260200182805461044290613739565b801561048f5780601f106104645761010080835404028352916020019161048f565b820191906000526020600020905b81548152906001019060200180831161047257829003601f168201915b505050505081565b606060036104a483611825565b6040516020016104b59291906137a8565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff8616148061051f575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff841661064e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016101d4565b61065a85858585611985565b610668858585855a86611bea565b5050505050565b61067a838383611d69565b505050565b60608151835114610712576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016101d4565b6000835167ffffffffffffffff81111561072e5761072e612f61565b604051908082528060200260200182016040528015610757578160200160208202803683370190505b50905060005b84518110156108175760008086838151811061077b5761077b6138b5565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107d1576107d16138b5565b60200260200101518152602001908152602001600020548282815181106107fa576107fa6138b5565b60209081029190910101528061080f81613913565b91505061075d565b509392505050565b6003805461041690613739565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610966576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101d4565b60606109a960405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a8b89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c6040516020016109e7919061394b565b604051602081830303815290604052805190602001208c604051602001610a0e919061394b565b604051602081830303815290604052805190602001208c610a30576000610a33565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e07565b9050610a9989898989611985565b8415610adc5780806020019051810190610ab39190613a55565b8094508193505050610acd89898989866020015188611bea565b610ad78983612097565b610aea565b610aea898989895a86611bea565b505050505050505050565b610b018484848461240a565b50505050565b61067a8383836124b2565b73ffffffffffffffffffffffffffffffffffffffff8516610bb5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016101d4565b6060610bf860405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3089857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a30576000610a33565b9050610c3e8989898961267e565b8415610c725780806020019051810190610c589190613a55565b8094508193505050610acd89898989866020015188612759565b610aea898989895a86612759565b610b01848484846128d8565b3373ffffffffffffffffffffffffffffffffffffffff86161480610ce0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610d6c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff8416610e0f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016101d4565b610e1b8585858561267e565b610668858585855a86612759565b6000610eb486837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610e5f576000610e62565b60015b89610e6e576000610e71565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610a77565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610f7857600081806020019051810190610f6a9190613aaf565b9050610f768782612097565b505b505050505050565b600080825111611038576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101d4565b73ffffffffffffffffffffffffffffffffffffffff85166110db576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101d4565b60006110e683612aae565b60f81c90506005811061117b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b60008160ff16600581111561119257611192613ae4565b90506000808080808560058111156111ac576111ac613ae4565b03611239576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101d4565b600185600581111561124d5761124d613ae4565b036113bf5787516061146112e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b6112ee886000612bb1565b92506112fb886020612bb1565b915087604081518110611310576113106138b5565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561136d573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506117c19650505050505050565b60028560058111156113d3576113d3613ae4565b03611539578751606114611469576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101d4565b611474886000612bb1565b9250611481886020612bb1565b915087604081518110611496576114966138b5565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a00161134b565b600385600581111561154d5761154d613ae4565b03611639576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906115a6908c908c90600401613b13565b602060405180830381865afa1580156115c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b600485600581111561164d5761164d613ae4565b03611739576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906116a6908d908c90600401613b55565b602060405180830381865afa1580156116c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e79190613b38565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506117c195505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101d4565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161181c57506001919050565b6103f882612c64565b60608160000361186857505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611892578061187c81613913565b915061188b9050600a83613b6e565b915061186c565b60008167ffffffffffffffff8111156118ad576118ad612f61565b6040519080825280601f01601f1916602001820160405280156118d7576020820181803683370190505b509050815b851561197c576118ed600182613ba9565b905060006118fc600a88613b6e565b61190790600a613bbc565b6119119088613ba9565b61191c906030613bd3565b905060008160f81b905080848481518110611939576119396138b5565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611973600a89613b6e565b975050506118dc565b50949350505050565b8051825114611a16576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016101d4565b815160005b81811015611b6457828181518110611a3557611a356138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611a8f57611a8f6138b5565b602002602001015181526020019081526020016000206000828254611ab49190613ba9565b92505081905550828181518110611acd57611acd6138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110611b2757611b276138b5565b602002602001015181526020019081526020016000206000828254611b4c9190613bec565b90915550819050611b5c81613913565b915050611a1b565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611bdb929190613bff565b60405180910390a45050505050565b611c098573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611c52959493929190613c24565b60206040518083038160008887f1158015611c71573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611c969190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016101d4565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611da7908490613ba9565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b60608083806020019051810190611e1e9190613c8f565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e56836041612bb1565b9050818110801590611e715750611e6e826064613bec565b81105b611efd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016101d4565b6000611f3986838780519060200120604051602001611f1e93929190613cc6565b60405160208183030381529060405280519060200120612d3b565b90506000868387604051602001611f5293929190613ced565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611f8d836001613bec565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611fe2856001613bec565b60405190815260200160405180910390a2611fff89838388610f80565b61208b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016101d4565b50505050509392505050565b60006120a68260600151612aae565b60f81c90506002811061213b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016101d4565b60008160ff16600281111561215257612152613ae4565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff161561218857866040015161218a565b335b925060008560028111156121a0576121a0613ae4565b036122b75786606001518060200190518101906121bd9190613d24565b90945091503073ffffffffffffffffffffffffffffffffffffffff85160361220d576121eb8884848461267e565b6122088884845a8560405180602001604052806000815250612759565b612400565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b15801561229a57600080fd5b505af11580156122ae573d6000803e3d6000fd5b50505050612400565b86606001518060200190518101906122cf9190613d52565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612350573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123749190613d6f565b612400576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016101d4565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832086845290915281208054849290612448908490613bec565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610b0160008585855a86612759565b815181518114612544576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b60005b818110156125f857828181518110612561576125616138b5565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106125bb576125bb6138b5565b6020026020010151815260200190815260200160002060008282546125e09190613ba9565b909155508190506125f081613913565b915050612547565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612670929190613bff565b60405180910390a450505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906126bc908490613ba9565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906126ff908490613bec565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612670565b6127788573ffffffffffffffffffffffffffffffffffffffff16612d01565b15610f785760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016127c1959493929190613d8c565b60206040518083038160008887f11580156127e0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906128059190613b38565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f76576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016101d4565b8151835114612969576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e4754480000000000000000000000000000000060648201526084016101d4565b825160005b81811015612a1f57838181518110612988576129886138b5565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106129e2576129e26138b5565b602002602001015181526020019081526020016000206000828254612a079190613bec565b90915550819050612a1781613913565b91505061296e565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051612a97929190613bff565b60405180910390a461066860008686865a87611bea565b600080825111612b40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101d4565b8160018351612b4f9190613ba9565b81518110612b5f57612b5f6138b5565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612bbe826020613bec565b83511015612c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101d4565b612c59602083613bec565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601612cb757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103f8565b6000813f8015801590612d3457507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612dc892919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612df193929190613cc6565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff81168114612e3057600080fd5b50565b60008060408385031215612e4657600080fd5b8235612e5181612e0e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612e3057600080fd5b600060208284031215612e9f57600080fd5b8135612d3481612e5f565b60005b83811015612ec5578181015183820152602001612ead565b50506000910152565b60008151808452612ee6816020860160208601612eaa565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000612d346020830184612ece565b600060208284031215612f3d57600080fd5b5035919050565b600060208284031215612f5657600080fd5b8135612d3481612e0e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612fd757612fd7612f61565b604052919050565b600067ffffffffffffffff821115612ff957612ff9612f61565b5060051b60200190565b600082601f83011261301457600080fd5b8135602061302961302483612fdf565b612f90565b82815260059290921b8401810191818101908684111561304857600080fd5b8286015b84811015613063578035835291830191830161304c565b509695505050505050565b600067ffffffffffffffff82111561308857613088612f61565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126130c557600080fd5b81356130d36130248261306e565b8181528460208386010111156130e857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561311d57600080fd5b853561312881612e0e565b9450602086013561313881612e0e565b9350604086013567ffffffffffffffff8082111561315557600080fd5b61316189838a01613003565b9450606088013591508082111561317757600080fd5b61318389838a01613003565b9350608088013591508082111561319957600080fd5b506131a6888289016130b4565b9150509295509295909350565b6000806000606084860312156131c857600080fd5b83356131d381612e0e565b95602085013595506040909401359392505050565b600080604083850312156131fb57600080fd5b823567ffffffffffffffff8082111561321357600080fd5b818501915085601f83011261322757600080fd5b8135602061323761302483612fdf565b82815260059290921b8401810191818101908984111561325657600080fd5b948201945b8386101561327d57853561326e81612e0e565b8252948201949082019061325b565b9650508601359250508082111561329357600080fd5b506132a085828601613003565b9150509250929050565b600081518084526020808501945080840160005b838110156132da578151875295820195908201906001016132be565b509495945050505050565b602081526000612d3460208301846132aa565b8015158114612e3057600080fd5b6000806040838503121561331957600080fd5b823561332481612e0e565b91506020830135613334816132f8565b809150509250929050565b60008060008060008060c0878903121561335857600080fd5b863561336381612e0e565b9550602087013561337381612e0e565b9450604087013567ffffffffffffffff8082111561339057600080fd5b61339c8a838b01613003565b955060608901359150808211156133b257600080fd5b6133be8a838b01613003565b9450608089013591506133d0826132f8565b90925060a088013590808211156133e657600080fd5b506133f389828a016130b4565b9150509295509295509295565b6000806000806080858703121561341657600080fd5b843561342181612e0e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561344b57600080fd5b613457878288016130b4565b91505092959194509250565b60008060006060848603121561347857600080fd5b833561348381612e0e565b9250602084013567ffffffffffffffff808211156134a057600080fd5b6134ac87838801613003565b935060408601359150808211156134c257600080fd5b506134cf86828701613003565b9150509250925092565b60008060008060008060c087890312156134f257600080fd5b86356134fd81612e0e565b9550602087013561350d81612e0e565b94506040870135935060608701359250608087013561352b816132f8565b915060a087013567ffffffffffffffff81111561354757600080fd5b6133f389828a016130b4565b6000806000806080858703121561356957600080fd5b843561357481612e0e565b9350602085013567ffffffffffffffff8082111561359157600080fd5b61359d88838901613003565b945060408701359150808211156135b357600080fd5b6135bf88838901613003565b935060608701359150808211156135d557600080fd5b50613457878288016130b4565b600080604083850312156135f557600080fd5b823561360081612e0e565b9150602083013561333481612e0e565b600080600080600060a0868803121561362857600080fd5b853561363381612e0e565b9450602086013561364381612e0e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561366d57600080fd5b6131a6888289016130b4565b600080600080600060a0868803121561369157600080fd5b853561369c81612e0e565b945060208601356136ac81612e0e565b935060408601356136bc816132f8565b925060608601356136cc816132f8565b9150608086013567ffffffffffffffff81111561366d57600080fd5b600080600080608085870312156136fe57600080fd5b843561370981612e0e565b935060208501359250604085013567ffffffffffffffff8082111561372d57600080fd5b6135bf888389016130b4565b600181811c9082168061374d57607f821691505b602082108103613786577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b6000815161379e818560208601612eaa565b9290920192915050565b600080845481600182811c9150808316806137c457607f831692505b602080841082036137fc577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613810576001811461384357613870565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613870565b60008b81526020902060005b868110156138685781548b82015290850190830161384f565b505084890196505b5050505050506138ac613883828661378c565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203613944576139446138e4565b5060010190565b815160009082906020808601845b8381101561397557815185529382019390820190600101613959565b50929695505050505050565b600082601f83011261399257600080fd5b81516139a06130248261306e565b8181528460208386010111156139b557600080fd5b6117c1826020830160208701612eaa565b6000608082840312156139d857600080fd5b6040516080810167ffffffffffffffff82821081831117156139fc576139fc612f61565b81604052829350845183526020850151602084015260408501519150613a2182612e0e565b8160408401526060850151915080821115613a3b57600080fd5b50613a4885828601613981565b6060830152505092915050565b60008060408385031215613a6857600080fd5b825167ffffffffffffffff80821115613a8057600080fd5b613a8c868387016139c6565b93506020850151915080821115613aa257600080fd5b506132a085828601613981565b600060208284031215613ac157600080fd5b815167ffffffffffffffff811115613ad857600080fd5b6117c1848285016139c6565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b604081526000613b266040830185612ece565b82810360208401526138ac8185612ece565b600060208284031215613b4a57600080fd5b8151612d3481612e5f565b8281526040602082015260006117c16040830184612ece565b600082613ba4577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103f8576103f86138e4565b80820281158282048414176103f8576103f86138e4565b60ff81811683821601908111156103f8576103f86138e4565b808201808211156103f8576103f86138e4565b604081526000613c1260408301856132aa565b82810360208401526138ac81856132aa565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152613c5d60a08301866132aa565b8281036060840152613c6f81866132aa565b90508281036080840152613c838185612ece565b98975050505050505050565b60008060408385031215613ca257600080fd5b825167ffffffffffffffff80821115613cba57600080fd5b613a8c86838701613981565b60008451613cd8818460208901612eaa565b91909101928352506020820152604001919050565b60008451613cff818460208901612eaa565b82018481528351613d17816020808501908801612eaa565b0160200195945050505050565b60008060408385031215613d3757600080fd5b8251613d4281612e0e565b6020939093015192949293505050565b600060208284031215613d6457600080fd5b8151612d3481612e0e565b600060208284031215613d8157600080fd5b8151612d34816132f8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152613dd160a0830184612ece565b97965050505050505056fea264697066735822122085a984cb87d1882d86be4e4f9921654af97ee515b51188027564f18c6cf69e2a64736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC1155MetaMintBurnPackedBalanceMock.sol/ERC1155MetaMintBurnPackedBalanceMock.json b/src/artifacts/contracts/mocks/ERC1155MetaMintBurnPackedBalanceMock.sol/ERC1155MetaMintBurnPackedBalanceMock.json index 1627226..a9704af 100644 --- a/src/artifacts/contracts/mocks/ERC1155MetaMintBurnPackedBalanceMock.sol/ERC1155MetaMintBurnPackedBalanceMock.json +++ b/src/artifacts/contracts/mocks/ERC1155MetaMintBurnPackedBalanceMock.sol/ERC1155MetaMintBurnPackedBalanceMock.json @@ -693,8 +693,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b50604051620049f4380380620049f4833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61468180620003736000396000f3fe608060405234801561001057600080fd5b50600436106101765760003560e01c8063a3d4926e116100d8578063db90e83c1161008c578063f242432a11610066578063f242432a146103f0578063f5d4c82014610403578063fa4e12d71461041657610176565b8063db90e83c1461036c578063e985e9c514610394578063eaec5f81146103dd57610176565b8063bd7a6c41116100bd578063bd7a6c4114610333578063ce0b514b14610346578063d7a0ad901461035957610176565b8063a3d4926e1461030d578063a3f091f51461032057610176565b80632eb2c2d61161012f5780634e1273f4116101145780634e1273f4146102d25780636c0360eb146102f2578063a22cb465146102fa57610176565b80632eb2c2d6146102aa578063437ecbe9146102bf57610176565b806306fdde031161016057806306fdde031461024c5780630e89341c146102615780632d0335ab1461027457610176565b8062fdd58e1461020357806301ffc9a714610229575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b610216610211366004613538565b610429565b6040519081526020015b60405180910390f35b61023c610237366004613592565b610480565b6040519015158152602001610220565b61025461048b565b604051610220919061361d565b61025461026f366004613630565b610519565b610216610282366004613649565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b6102bd6102b836600461380a565b61054d565b005b6102bd6102cd3660046138b8565b6106f1565b6102e56102e03660046138ed565b610701565b60405161022091906139ea565b6102546109fb565b6102bd610308366004613a0b565b610a08565b6102bd61031b366004613a44565b610a9f565b6102bd61032e366004613b05565b610cf7565b6102bd610341366004613b68565b610d09565b6102bd610354366004613bde565b610d14565b6102bd610367366004613c58565b610e84565b61037f61037a366004613630565b610e90565b60408051928352602083019190915201610220565b61023c6103a2366004613ce7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6102166103eb366004613d15565b610eca565b6102bd6103fe366004613d37565b610ef8565b6102bd610411366004613da0565b611095565b61023c610424366004613e0f565b6111ec565b600080600061043784610e90565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506104759082610eca565b925050505b92915050565b600061047a82611a35565b6004805461049890613e60565b80601f01602080910402602001604051908101604052809291908181526020018280546104c490613e60565b80156105115780601f106104e657610100808354040283529160200191610511565b820191906000526020600020905b8154815290600101906020018083116104f457829003601f168201915b505050505081565b6060600361052683611a91565b604051602001610537929190613ecf565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806105a1575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b61062d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff84166106d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e5400000060648201526084016101fa565b6106dc85858585611bf1565b6106ea858585855a86612054565b5050505050565b6106fc8383836121f9565b505050565b81518151606091908114610797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e4754480000000000000060648201526084016101fa565b6000806107bd856000815181106107b0576107b0613fdc565b6020026020010151610e90565b915091506000806000886000815181106107d9576107d9613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561084f5761084f613666565b604051908082528060200260200182016040528015610878578160200160208202803683370190505b5090506108858385610eca565b8160008151811061089857610898613fdc565b602090810291909101015260015b868110156109ee576108c38982815181106107b0576107b0613fdc565b9096509450828614158061094157508981815181106108e4576108e4613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a600183610910919061403a565b8151811061092057610920613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156109b5576000808b838151811061095b5761095b613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6109bf8486610eca565b8282815181106109d1576109d1613fdc565b6020908102919091010152806109e68161404d565b9150506108a6565b5098975050505050505050565b6003805461049890613e60565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610b68576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b6060610bab60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c8d89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610be99190614085565b604051602081830303815290604052805190602001208c604051602001610c109190614085565b604051602081830303815290604052805190602001208c610c32576000610c35565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052612261565b9050610c9b89898989611bf1565b8415610cde5780806020019051810190610cb5919061418f565b8094508193505050610ccf89898989866020015188612054565b610cd989836124f3565b610cec565b610cec898989895a86612054565b505050505050505050565b610d0384848484612866565b50505050565b6106fc8383836128d8565b73ffffffffffffffffffffffffffffffffffffffff8516610db957604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e5460648201526084016101fa565b6060610dfc60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610e3489857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610c32576000610c35565b9050610e4289898989612a4c565b8415610e765780806020019051810190610e5c919061418f565b8094508193505050610ccf89898989866020015188612abb565b610cec898989895a86612abb565b610d0384848484612c60565b600080610ea06020610100614218565b610eaa9084614218565b9150610eb96020610100614218565b610ec3908461422c565b9050915091565b600080610edd600164010000000061403a565b90506000610eec846020614240565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610f4c575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610fd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f5200000000000000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff841661107b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101fa565b61108785858585612a4c565b6106ea858585855a86612abb565b600061112086837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa5248289896110cb5760006110ce565b60015b896110da5760006110dd565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610c79565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a382156111e4576000818060200190518101906111d69190614257565b90506111e287826124f3565b505b505050505050565b6000808251116112a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b73ffffffffffffffffffffffffffffffffffffffff8516611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101fa565b600061135283612ec1565b60f81c9050600581106113e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b60008160ff1660058111156113fe576113fe61428c565b90506000808080808560058111156114185761141861428c565b036114a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101fa565b60018560058111156114b9576114b961428c565b0361162b57875160611461154f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b61155a886000612fc4565b9250611567886020612fc4565b91508760408151811061157c5761157c613fdc565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156115d9573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d81169116149750611a2d9650505050505050565b600285600581111561163f5761163f61428c565b036117a55787516061146116d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b6116e0886000612fc4565b92506116ed886020612fc4565b91508760408151811061170257611702613fdc565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016115b7565b60038560058111156117b9576117b961428c565b036118a5576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611812908c908c906004016142bb565b602060405180830381865afa15801561182f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b60048560058111156118b9576118b961428c565b036119a5576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611912908d908c906004016142fd565b602060405180830381865afa15801561192f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a8857506001919050565b61047a82613077565b606081600003611ad457505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611afe5780611ae88161404d565b9150611af79050600a83614218565b9150611ad8565b60008167ffffffffffffffff811115611b1957611b19613666565b6040519080825280601f01601f191660200182016040528015611b43576020820181803683370190505b509050815b8515611be857611b5960018261403a565b90506000611b68600a88614218565b611b7390600a614240565b611b7d908861403a565b611b88906030614316565b905060008160f81b905080848481518110611ba557611ba5613fdc565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611bdf600a89614218565b97505050611b48565b50949350505050565b815181518114611ca9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015611ce55750600081115b15611ee557600080611d03856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091611d619190849088908590611d5257611d52613fdc565b60200260200101516001613114565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091611dbd9190859089908590611dae57611dae613fdc565b60200260200101516000613114565b90508360015b86811015611e9357611de08982815181106107b0576107b0613fdc565b9096509450818614611e4f5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611e6684868a8481518110611d5257611d52613fdc565b9350611e7f83868a8481518110611dae57611dae613fdc565b925080611e8b8161404d565b915050611dc3565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611fcf565b60005b81811015611fcd57828181518110611f0257611f02613fdc565b6020026020010151611f2d87868481518110611f2057611f20613fdc565b6020026020010151610429565b1015611fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f570000000000000000000060648201526084016101fa565b80611fc58161404d565b915050611ee8565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161204592919061432f565b60405180910390a45050505050565b6120738573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016120bc959493929190614354565b60206040518083038160008887f11580156120db573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061210091906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c8100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a4016101fa565b61220683838360016133b9565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6060808380602001905181019061227891906143bf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260026020526040812054919450919250906122b0836041612fc4565b90508181108015906122cb57506122c88260646143f6565b81105b612357576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e43450000000060648201526084016101fa565b60006123938683878051906020012060405160200161237893929190614409565b60405160208183030381529060405280519060200120613440565b905060008683876040516020016123ac93929190614430565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905290506123e78360016143f6565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf5961243c8560016143f6565b60405190815260200160405180910390a2612459898383886111ec565b6124e757604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e415455524560648201526084016101fa565b50505050509392505050565b60006125028260600151612ec1565b60f81c905060028110612597576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e000000000060648201526084016101fa565b60008160ff1660028111156125ae576125ae61428c565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156125e45786604001516125e6565b335b925060008560028111156125fc576125fc61428c565b036127135786606001518060200190518101906126199190614467565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036126695761264788848484612a4c565b6126648884845a8560405180602001604052806000815250612abb565b61285c565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156126f657600080fd5b505af115801561270a573d6000803e3d6000fd5b5050505061285c565b866060015180602001905181019061272b9190614495565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af11580156127ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127d091906144b2565b61285c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c45440060648201526084016101fa565b5050505050505050565b61287384848460006133b9565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610d0360008585855a86612abb565b81518151811461296a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e47544800000060648201526084016101fa565b60005b818110156129c6576129b48585838151811061298b5761298b613fdc565b60200260200101518584815181106129a5576129a5613fdc565b602002602001015160016133b9565b806129be8161404d565b91505061296d565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612a3e92919061432f565b60405180910390a450505050565b612a5984838360016133b9565b612a6683838360006133b9565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612a3e565b612ada8573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401612b239594939291906144cf565b60206040518083038160008887f1158015612b42573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612b6791906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e6100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a4016101fa565b8151835114612cf1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e475448000060648201526084016101fa565b825115612e3357600080612d11856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152812054875193955091935091612d609190849088908590611dae57611dae613fdc565b86519091508360015b82811015612dfa57612d868982815181106107b0576107b0613fdc565b9096509450818614612dcf5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b612de684868a8481518110611dae57611dae613fdc565b935080612df28161404d565b915050612d69565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612eaa92919061432f565b60405180910390a4610d0360008585855a86612054565b600080825111612f53576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101fa565b8160018351612f62919061403a565b81518110612f7257612f72613fdc565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612fd18260206143f6565b83511015613061576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101fa565b61306c6020836143f6565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016130ca57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461047a565b600080613122856020614240565b90506000613136600164010000000061403a565b9050600084600181111561314c5761314c61428c565b0361320b5761315d85831b886143f6565b925061316b6020600261463f565b6131798689851c84166143f6565b10613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f57000000000000000000000000000060648201526084016101fa565b613375565b600184600181111561321f5761321f61428c565b036132c75761323085831b8861403a565b925084818389901c161015613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f570000000000000000000000000060648201526084016101fa565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b5050949350505050565b6000813f80158015906133b257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806133c585610e90565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061340590828686613114565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b306040516020016134cd92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016134f693929190614409565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461353557600080fd5b50565b6000806040838503121561354b57600080fd5b823561355681613513565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461353557600080fd5b6000602082840312156135a457600080fd5b81356133b281613564565b60005b838110156135ca5781810151838201526020016135b2565b50506000910152565b600081518084526135eb8160208601602086016135af565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006133b260208301846135d3565b60006020828403121561364257600080fd5b5035919050565b60006020828403121561365b57600080fd5b81356133b281613513565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156136dc576136dc613666565b604052919050565b600067ffffffffffffffff8211156136fe576136fe613666565b5060051b60200190565b600082601f83011261371957600080fd5b8135602061372e613729836136e4565b613695565b82815260059290921b8401810191818101908684111561374d57600080fd5b8286015b848110156137685780358352918301918301613751565b509695505050505050565b600067ffffffffffffffff82111561378d5761378d613666565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126137ca57600080fd5b81356137d861372982613773565b8181528460208386010111156137ed57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561382257600080fd5b853561382d81613513565b9450602086013561383d81613513565b9350604086013567ffffffffffffffff8082111561385a57600080fd5b61386689838a01613708565b9450606088013591508082111561387c57600080fd5b61388889838a01613708565b9350608088013591508082111561389e57600080fd5b506138ab888289016137b9565b9150509295509295909350565b6000806000606084860312156138cd57600080fd5b83356138d881613513565b95602085013595506040909401359392505050565b6000806040838503121561390057600080fd5b823567ffffffffffffffff8082111561391857600080fd5b818501915085601f83011261392c57600080fd5b8135602061393c613729836136e4565b82815260059290921b8401810191818101908984111561395b57600080fd5b948201945b8386101561398257853561397381613513565b82529482019490820190613960565b9650508601359250508082111561399857600080fd5b506139a585828601613708565b9150509250929050565b600081518084526020808501945080840160005b838110156139df578151875295820195908201906001016139c3565b509495945050505050565b6020815260006133b260208301846139af565b801515811461353557600080fd5b60008060408385031215613a1e57600080fd5b8235613a2981613513565b91506020830135613a39816139fd565b809150509250929050565b60008060008060008060c08789031215613a5d57600080fd5b8635613a6881613513565b95506020870135613a7881613513565b9450604087013567ffffffffffffffff80821115613a9557600080fd5b613aa18a838b01613708565b95506060890135915080821115613ab757600080fd5b613ac38a838b01613708565b945060808901359150613ad5826139fd565b90925060a08801359080821115613aeb57600080fd5b50613af889828a016137b9565b9150509295509295509295565b60008060008060808587031215613b1b57600080fd5b8435613b2681613513565b93506020850135925060408501359150606085013567ffffffffffffffff811115613b5057600080fd5b613b5c878288016137b9565b91505092959194509250565b600080600060608486031215613b7d57600080fd5b8335613b8881613513565b9250602084013567ffffffffffffffff80821115613ba557600080fd5b613bb187838801613708565b93506040860135915080821115613bc757600080fd5b50613bd486828701613708565b9150509250925092565b60008060008060008060c08789031215613bf757600080fd5b8635613c0281613513565b95506020870135613c1281613513565b945060408701359350606087013592506080870135613c30816139fd565b915060a087013567ffffffffffffffff811115613c4c57600080fd5b613af889828a016137b9565b60008060008060808587031215613c6e57600080fd5b8435613c7981613513565b9350602085013567ffffffffffffffff80821115613c9657600080fd5b613ca288838901613708565b94506040870135915080821115613cb857600080fd5b613cc488838901613708565b93506060870135915080821115613cda57600080fd5b50613b5c878288016137b9565b60008060408385031215613cfa57600080fd5b8235613d0581613513565b91506020830135613a3981613513565b60008060408385031215613d2857600080fd5b50508035926020909101359150565b600080600080600060a08688031215613d4f57600080fd5b8535613d5a81613513565b94506020860135613d6a81613513565b93506040860135925060608601359150608086013567ffffffffffffffff811115613d9457600080fd5b6138ab888289016137b9565b600080600080600060a08688031215613db857600080fd5b8535613dc381613513565b94506020860135613dd381613513565b93506040860135613de3816139fd565b92506060860135613df3816139fd565b9150608086013567ffffffffffffffff811115613d9457600080fd5b60008060008060808587031215613e2557600080fd5b8435613e3081613513565b935060208501359250604085013567ffffffffffffffff80821115613e5457600080fd5b613cc4888389016137b9565b600181811c90821680613e7457607f821691505b602082108103613ead577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151613ec58185602086016135af565b9290920192915050565b600080845481600182811c915080831680613eeb57607f831692505b60208084108203613f23577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613f375760018114613f6a57613f97565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613f97565b60008b81526020902060005b86811015613f8f5781548b820152908501908301613f76565b505084890196505b505050505050613fd3613faa8286613eb3565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561047a5761047a61400b565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361407e5761407e61400b565b5060010190565b815160009082906020808601845b838110156140af57815185529382019390820190600101614093565b50929695505050505050565b600082601f8301126140cc57600080fd5b81516140da61372982613773565b8181528460208386010111156140ef57600080fd5b611a2d8260208301602087016135af565b60006080828403121561411257600080fd5b6040516080810167ffffffffffffffff828210818311171561413657614136613666565b8160405282935084518352602085015160208401526040850151915061415b82613513565b816040840152606085015191508082111561417557600080fd5b50614182858286016140bb565b6060830152505092915050565b600080604083850312156141a257600080fd5b825167ffffffffffffffff808211156141ba57600080fd5b6141c686838701614100565b935060208501519150808211156141dc57600080fd5b506139a5858286016140bb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082614227576142276141e9565b500490565b60008261423b5761423b6141e9565b500690565b808202811582820484141761047a5761047a61400b565b60006020828403121561426957600080fd5b815167ffffffffffffffff81111561428057600080fd5b611a2d84828501614100565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6040815260006142ce60408301856135d3565b8281036020840152613fd381856135d3565b6000602082840312156142f257600080fd5b81516133b281613564565b828152604060208201526000611a2d60408301846135d3565b60ff818116838216019081111561047a5761047a61400b565b60408152600061434260408301856139af565b8281036020840152613fd381856139af565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261438d60a08301866139af565b828103606084015261439f81866139af565b905082810360808401526143b381856135d3565b98975050505050505050565b600080604083850312156143d257600080fd5b825167ffffffffffffffff808211156143ea57600080fd5b6141c6868387016140bb565b8082018082111561047a5761047a61400b565b6000845161441b8184602089016135af565b91909101928352506020820152604001919050565b600084516144428184602089016135af565b8201848152835161445a8160208085019088016135af565b0160200195945050505050565b6000806040838503121561447a57600080fd5b825161448581613513565b6020939093015192949293505050565b6000602082840312156144a757600080fd5b81516133b281613513565b6000602082840312156144c457600080fd5b81516133b2816139fd565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261451460a08301846135d3565b979650505050505050565b600181815b8085111561457857817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561455e5761455e61400b565b8085161561456b57918102915b93841c9390800290614524565b509250929050565b60008261458f5750600161047a565b8161459c5750600061047a565b81600181146145b257600281146145bc576145d8565b600191505061047a565b60ff8411156145cd576145cd61400b565b50506001821b61047a565b5060208310610133831016604e8410600b84101617156145fb575081810a61047a565b614605838361451f565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156146375761463761400b565b029392505050565b60006133b2838361458056fea26469706673582212206d206f09c76abdb29337514c27d2df722cd22473e22b4d421221e9ec98f1937b64736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101765760003560e01c8063a3d4926e116100d8578063db90e83c1161008c578063f242432a11610066578063f242432a146103f0578063f5d4c82014610403578063fa4e12d71461041657610176565b8063db90e83c1461036c578063e985e9c514610394578063eaec5f81146103dd57610176565b8063bd7a6c41116100bd578063bd7a6c4114610333578063ce0b514b14610346578063d7a0ad901461035957610176565b8063a3d4926e1461030d578063a3f091f51461032057610176565b80632eb2c2d61161012f5780634e1273f4116101145780634e1273f4146102d25780636c0360eb146102f2578063a22cb465146102fa57610176565b80632eb2c2d6146102aa578063437ecbe9146102bf57610176565b806306fdde031161016057806306fdde031461024c5780630e89341c146102615780632d0335ab1461027457610176565b8062fdd58e1461020357806301ffc9a714610229575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b610216610211366004613538565b610429565b6040519081526020015b60405180910390f35b61023c610237366004613592565b610480565b6040519015158152602001610220565b61025461048b565b604051610220919061361d565b61025461026f366004613630565b610519565b610216610282366004613649565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b6102bd6102b836600461380a565b61054d565b005b6102bd6102cd3660046138b8565b6106f1565b6102e56102e03660046138ed565b610701565b60405161022091906139ea565b6102546109fb565b6102bd610308366004613a0b565b610a08565b6102bd61031b366004613a44565b610a9f565b6102bd61032e366004613b05565b610cf7565b6102bd610341366004613b68565b610d09565b6102bd610354366004613bde565b610d14565b6102bd610367366004613c58565b610e84565b61037f61037a366004613630565b610e90565b60408051928352602083019190915201610220565b61023c6103a2366004613ce7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6102166103eb366004613d15565b610eca565b6102bd6103fe366004613d37565b610ef8565b6102bd610411366004613da0565b611095565b61023c610424366004613e0f565b6111ec565b600080600061043784610e90565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506104759082610eca565b925050505b92915050565b600061047a82611a35565b6004805461049890613e60565b80601f01602080910402602001604051908101604052809291908181526020018280546104c490613e60565b80156105115780601f106104e657610100808354040283529160200191610511565b820191906000526020600020905b8154815290600101906020018083116104f457829003601f168201915b505050505081565b6060600361052683611a91565b604051602001610537929190613ecf565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806105a1575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b61062d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff84166106d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e5400000060648201526084016101fa565b6106dc85858585611bf1565b6106ea858585855a86612054565b5050505050565b6106fc8383836121f9565b505050565b81518151606091908114610797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e4754480000000000000060648201526084016101fa565b6000806107bd856000815181106107b0576107b0613fdc565b6020026020010151610e90565b915091506000806000886000815181106107d9576107d9613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561084f5761084f613666565b604051908082528060200260200182016040528015610878578160200160208202803683370190505b5090506108858385610eca565b8160008151811061089857610898613fdc565b602090810291909101015260015b868110156109ee576108c38982815181106107b0576107b0613fdc565b9096509450828614158061094157508981815181106108e4576108e4613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a600183610910919061403a565b8151811061092057610920613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156109b5576000808b838151811061095b5761095b613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6109bf8486610eca565b8282815181106109d1576109d1613fdc565b6020908102919091010152806109e68161404d565b9150506108a6565b5098975050505050505050565b6003805461049890613e60565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610b68576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b6060610bab60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c8d89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610be99190614085565b604051602081830303815290604052805190602001208c604051602001610c109190614085565b604051602081830303815290604052805190602001208c610c32576000610c35565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052612261565b9050610c9b89898989611bf1565b8415610cde5780806020019051810190610cb5919061418f565b8094508193505050610ccf89898989866020015188612054565b610cd989836124f3565b610cec565b610cec898989895a86612054565b505050505050505050565b610d0384848484612866565b50505050565b6106fc8383836128d8565b73ffffffffffffffffffffffffffffffffffffffff8516610db957604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e5460648201526084016101fa565b6060610dfc60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610e3489857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610c32576000610c35565b9050610e4289898989612a4c565b8415610e765780806020019051810190610e5c919061418f565b8094508193505050610ccf89898989866020015188612abb565b610cec898989895a86612abb565b610d0384848484612c60565b600080610ea06020610100614218565b610eaa9084614218565b9150610eb96020610100614218565b610ec3908461422c565b9050915091565b600080610edd600164010000000061403a565b90506000610eec846020614240565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610f4c575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610fd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f5200000000000000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff841661107b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101fa565b61108785858585612a4c565b6106ea858585855a86612abb565b600061112086837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa5248289896110cb5760006110ce565b60015b896110da5760006110dd565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610c79565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a382156111e4576000818060200190518101906111d69190614257565b90506111e287826124f3565b505b505050505050565b6000808251116112a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b73ffffffffffffffffffffffffffffffffffffffff8516611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101fa565b600061135283612ec1565b60f81c9050600581106113e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b60008160ff1660058111156113fe576113fe61428c565b90506000808080808560058111156114185761141861428c565b036114a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101fa565b60018560058111156114b9576114b961428c565b0361162b57875160611461154f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b61155a886000612fc4565b9250611567886020612fc4565b91508760408151811061157c5761157c613fdc565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156115d9573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d81169116149750611a2d9650505050505050565b600285600581111561163f5761163f61428c565b036117a55787516061146116d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b6116e0886000612fc4565b92506116ed886020612fc4565b91508760408151811061170257611702613fdc565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016115b7565b60038560058111156117b9576117b961428c565b036118a5576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611812908c908c906004016142bb565b602060405180830381865afa15801561182f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b60048560058111156118b9576118b961428c565b036119a5576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611912908d908c906004016142fd565b602060405180830381865afa15801561192f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a8857506001919050565b61047a82613077565b606081600003611ad457505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611afe5780611ae88161404d565b9150611af79050600a83614218565b9150611ad8565b60008167ffffffffffffffff811115611b1957611b19613666565b6040519080825280601f01601f191660200182016040528015611b43576020820181803683370190505b509050815b8515611be857611b5960018261403a565b90506000611b68600a88614218565b611b7390600a614240565b611b7d908861403a565b611b88906030614316565b905060008160f81b905080848481518110611ba557611ba5613fdc565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611bdf600a89614218565b97505050611b48565b50949350505050565b815181518114611ca9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015611ce55750600081115b15611ee557600080611d03856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091611d619190849088908590611d5257611d52613fdc565b60200260200101516001613114565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091611dbd9190859089908590611dae57611dae613fdc565b60200260200101516000613114565b90508360015b86811015611e9357611de08982815181106107b0576107b0613fdc565b9096509450818614611e4f5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611e6684868a8481518110611d5257611d52613fdc565b9350611e7f83868a8481518110611dae57611dae613fdc565b925080611e8b8161404d565b915050611dc3565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611fcf565b60005b81811015611fcd57828181518110611f0257611f02613fdc565b6020026020010151611f2d87868481518110611f2057611f20613fdc565b6020026020010151610429565b1015611fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f570000000000000000000060648201526084016101fa565b80611fc58161404d565b915050611ee8565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161204592919061432f565b60405180910390a45050505050565b6120738573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016120bc959493929190614354565b60206040518083038160008887f11580156120db573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061210091906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c8100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a4016101fa565b61220683838360016133b9565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6060808380602001905181019061227891906143bf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260026020526040812054919450919250906122b0836041612fc4565b90508181108015906122cb57506122c88260646143f6565b81105b612357576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e43450000000060648201526084016101fa565b60006123938683878051906020012060405160200161237893929190614409565b60405160208183030381529060405280519060200120613440565b905060008683876040516020016123ac93929190614430565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905290506123e78360016143f6565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf5961243c8560016143f6565b60405190815260200160405180910390a2612459898383886111ec565b6124e757604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e415455524560648201526084016101fa565b50505050509392505050565b60006125028260600151612ec1565b60f81c905060028110612597576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e000000000060648201526084016101fa565b60008160ff1660028111156125ae576125ae61428c565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156125e45786604001516125e6565b335b925060008560028111156125fc576125fc61428c565b036127135786606001518060200190518101906126199190614467565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036126695761264788848484612a4c565b6126648884845a8560405180602001604052806000815250612abb565b61285c565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156126f657600080fd5b505af115801561270a573d6000803e3d6000fd5b5050505061285c565b866060015180602001905181019061272b9190614495565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af11580156127ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127d091906144b2565b61285c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c45440060648201526084016101fa565b5050505050505050565b61287384848460006133b9565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610d0360008585855a86612abb565b81518151811461296a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e47544800000060648201526084016101fa565b60005b818110156129c6576129b48585838151811061298b5761298b613fdc565b60200260200101518584815181106129a5576129a5613fdc565b602002602001015160016133b9565b806129be8161404d565b91505061296d565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612a3e92919061432f565b60405180910390a450505050565b612a5984838360016133b9565b612a6683838360006133b9565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612a3e565b612ada8573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401612b239594939291906144cf565b60206040518083038160008887f1158015612b42573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612b6791906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e6100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a4016101fa565b8151835114612cf1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e475448000060648201526084016101fa565b825115612e3357600080612d11856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152812054875193955091935091612d609190849088908590611dae57611dae613fdc565b86519091508360015b82811015612dfa57612d868982815181106107b0576107b0613fdc565b9096509450818614612dcf5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b612de684868a8481518110611dae57611dae613fdc565b935080612df28161404d565b915050612d69565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612eaa92919061432f565b60405180910390a4610d0360008585855a86612054565b600080825111612f53576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101fa565b8160018351612f62919061403a565b81518110612f7257612f72613fdc565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612fd18260206143f6565b83511015613061576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101fa565b61306c6020836143f6565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016130ca57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461047a565b600080613122856020614240565b90506000613136600164010000000061403a565b9050600084600181111561314c5761314c61428c565b0361320b5761315d85831b886143f6565b925061316b6020600261463f565b6131798689851c84166143f6565b10613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f57000000000000000000000000000060648201526084016101fa565b613375565b600184600181111561321f5761321f61428c565b036132c75761323085831b8861403a565b925084818389901c161015613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f570000000000000000000000000060648201526084016101fa565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b5050949350505050565b6000813f80158015906133b257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806133c585610e90565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061340590828686613114565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b306040516020016134cd92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016134f693929190614409565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461353557600080fd5b50565b6000806040838503121561354b57600080fd5b823561355681613513565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461353557600080fd5b6000602082840312156135a457600080fd5b81356133b281613564565b60005b838110156135ca5781810151838201526020016135b2565b50506000910152565b600081518084526135eb8160208601602086016135af565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006133b260208301846135d3565b60006020828403121561364257600080fd5b5035919050565b60006020828403121561365b57600080fd5b81356133b281613513565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156136dc576136dc613666565b604052919050565b600067ffffffffffffffff8211156136fe576136fe613666565b5060051b60200190565b600082601f83011261371957600080fd5b8135602061372e613729836136e4565b613695565b82815260059290921b8401810191818101908684111561374d57600080fd5b8286015b848110156137685780358352918301918301613751565b509695505050505050565b600067ffffffffffffffff82111561378d5761378d613666565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126137ca57600080fd5b81356137d861372982613773565b8181528460208386010111156137ed57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561382257600080fd5b853561382d81613513565b9450602086013561383d81613513565b9350604086013567ffffffffffffffff8082111561385a57600080fd5b61386689838a01613708565b9450606088013591508082111561387c57600080fd5b61388889838a01613708565b9350608088013591508082111561389e57600080fd5b506138ab888289016137b9565b9150509295509295909350565b6000806000606084860312156138cd57600080fd5b83356138d881613513565b95602085013595506040909401359392505050565b6000806040838503121561390057600080fd5b823567ffffffffffffffff8082111561391857600080fd5b818501915085601f83011261392c57600080fd5b8135602061393c613729836136e4565b82815260059290921b8401810191818101908984111561395b57600080fd5b948201945b8386101561398257853561397381613513565b82529482019490820190613960565b9650508601359250508082111561399857600080fd5b506139a585828601613708565b9150509250929050565b600081518084526020808501945080840160005b838110156139df578151875295820195908201906001016139c3565b509495945050505050565b6020815260006133b260208301846139af565b801515811461353557600080fd5b60008060408385031215613a1e57600080fd5b8235613a2981613513565b91506020830135613a39816139fd565b809150509250929050565b60008060008060008060c08789031215613a5d57600080fd5b8635613a6881613513565b95506020870135613a7881613513565b9450604087013567ffffffffffffffff80821115613a9557600080fd5b613aa18a838b01613708565b95506060890135915080821115613ab757600080fd5b613ac38a838b01613708565b945060808901359150613ad5826139fd565b90925060a08801359080821115613aeb57600080fd5b50613af889828a016137b9565b9150509295509295509295565b60008060008060808587031215613b1b57600080fd5b8435613b2681613513565b93506020850135925060408501359150606085013567ffffffffffffffff811115613b5057600080fd5b613b5c878288016137b9565b91505092959194509250565b600080600060608486031215613b7d57600080fd5b8335613b8881613513565b9250602084013567ffffffffffffffff80821115613ba557600080fd5b613bb187838801613708565b93506040860135915080821115613bc757600080fd5b50613bd486828701613708565b9150509250925092565b60008060008060008060c08789031215613bf757600080fd5b8635613c0281613513565b95506020870135613c1281613513565b945060408701359350606087013592506080870135613c30816139fd565b915060a087013567ffffffffffffffff811115613c4c57600080fd5b613af889828a016137b9565b60008060008060808587031215613c6e57600080fd5b8435613c7981613513565b9350602085013567ffffffffffffffff80821115613c9657600080fd5b613ca288838901613708565b94506040870135915080821115613cb857600080fd5b613cc488838901613708565b93506060870135915080821115613cda57600080fd5b50613b5c878288016137b9565b60008060408385031215613cfa57600080fd5b8235613d0581613513565b91506020830135613a3981613513565b60008060408385031215613d2857600080fd5b50508035926020909101359150565b600080600080600060a08688031215613d4f57600080fd5b8535613d5a81613513565b94506020860135613d6a81613513565b93506040860135925060608601359150608086013567ffffffffffffffff811115613d9457600080fd5b6138ab888289016137b9565b600080600080600060a08688031215613db857600080fd5b8535613dc381613513565b94506020860135613dd381613513565b93506040860135613de3816139fd565b92506060860135613df3816139fd565b9150608086013567ffffffffffffffff811115613d9457600080fd5b60008060008060808587031215613e2557600080fd5b8435613e3081613513565b935060208501359250604085013567ffffffffffffffff80821115613e5457600080fd5b613cc4888389016137b9565b600181811c90821680613e7457607f821691505b602082108103613ead577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151613ec58185602086016135af565b9290920192915050565b600080845481600182811c915080831680613eeb57607f831692505b60208084108203613f23577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613f375760018114613f6a57613f97565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613f97565b60008b81526020902060005b86811015613f8f5781548b820152908501908301613f76565b505084890196505b505050505050613fd3613faa8286613eb3565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561047a5761047a61400b565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361407e5761407e61400b565b5060010190565b815160009082906020808601845b838110156140af57815185529382019390820190600101614093565b50929695505050505050565b600082601f8301126140cc57600080fd5b81516140da61372982613773565b8181528460208386010111156140ef57600080fd5b611a2d8260208301602087016135af565b60006080828403121561411257600080fd5b6040516080810167ffffffffffffffff828210818311171561413657614136613666565b8160405282935084518352602085015160208401526040850151915061415b82613513565b816040840152606085015191508082111561417557600080fd5b50614182858286016140bb565b6060830152505092915050565b600080604083850312156141a257600080fd5b825167ffffffffffffffff808211156141ba57600080fd5b6141c686838701614100565b935060208501519150808211156141dc57600080fd5b506139a5858286016140bb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082614227576142276141e9565b500490565b60008261423b5761423b6141e9565b500690565b808202811582820484141761047a5761047a61400b565b60006020828403121561426957600080fd5b815167ffffffffffffffff81111561428057600080fd5b611a2d84828501614100565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6040815260006142ce60408301856135d3565b8281036020840152613fd381856135d3565b6000602082840312156142f257600080fd5b81516133b281613564565b828152604060208201526000611a2d60408301846135d3565b60ff818116838216019081111561047a5761047a61400b565b60408152600061434260408301856139af565b8281036020840152613fd381856139af565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261438d60a08301866139af565b828103606084015261439f81866139af565b905082810360808401526143b381856135d3565b98975050505050505050565b600080604083850312156143d257600080fd5b825167ffffffffffffffff808211156143ea57600080fd5b6141c6868387016140bb565b8082018082111561047a5761047a61400b565b6000845161441b8184602089016135af565b91909101928352506020820152604001919050565b600084516144428184602089016135af565b8201848152835161445a8160208085019088016135af565b0160200195945050505050565b6000806040838503121561447a57600080fd5b825161448581613513565b6020939093015192949293505050565b6000602082840312156144a757600080fd5b81516133b281613513565b6000602082840312156144c457600080fd5b81516133b2816139fd565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261451460a08301846135d3565b979650505050505050565b600181815b8085111561457857817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561455e5761455e61400b565b8085161561456b57918102915b93841c9390800290614524565b509250929050565b60008261458f5750600161047a565b8161459c5750600061047a565b81600181146145b257600281146145bc576145d8565b600191505061047a565b60ff8411156145cd576145cd61400b565b50506001821b61047a565b5060208310610133831016604e8410600b84101617156145fb575081810a61047a565b614605838361451f565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156146375761463761400b565b029392505050565b60006133b2838361458056fea26469706673582212206d206f09c76abdb29337514c27d2df722cd22473e22b4d421221e9ec98f1937b64736f6c63430008120033", + "bytecode": "0x60806040523480156200001157600080fd5b50604051620049f4380380620049f4833981016040819052620000349162000142565b818160046200004483826200023c565b5060036200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61468180620003736000396000f3fe608060405234801561001057600080fd5b50600436106101765760003560e01c8063a3d4926e116100d8578063db90e83c1161008c578063f242432a11610066578063f242432a146103f0578063f5d4c82014610403578063fa4e12d71461041657610176565b8063db90e83c1461036c578063e985e9c514610394578063eaec5f81146103dd57610176565b8063bd7a6c41116100bd578063bd7a6c4114610333578063ce0b514b14610346578063d7a0ad901461035957610176565b8063a3d4926e1461030d578063a3f091f51461032057610176565b80632eb2c2d61161012f5780634e1273f4116101145780634e1273f4146102d25780636c0360eb146102f2578063a22cb465146102fa57610176565b80632eb2c2d6146102aa578063437ecbe9146102bf57610176565b806306fdde031161016057806306fdde031461024c5780630e89341c146102615780632d0335ab1461027457610176565b8062fdd58e1461020357806301ffc9a714610229575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b610216610211366004613538565b610429565b6040519081526020015b60405180910390f35b61023c610237366004613592565b610480565b6040519015158152602001610220565b61025461048b565b604051610220919061361d565b61025461026f366004613630565b610519565b610216610282366004613649565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b6102bd6102b836600461380a565b61054d565b005b6102bd6102cd3660046138b8565b6106f1565b6102e56102e03660046138ed565b610701565b60405161022091906139ea565b6102546109fb565b6102bd610308366004613a0b565b610a08565b6102bd61031b366004613a44565b610a9f565b6102bd61032e366004613b05565b610cf7565b6102bd610341366004613b68565b610d09565b6102bd610354366004613bde565b610d14565b6102bd610367366004613c58565b610e84565b61037f61037a366004613630565b610e90565b60408051928352602083019190915201610220565b61023c6103a2366004613ce7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6102166103eb366004613d15565b610eca565b6102bd6103fe366004613d37565b610ef8565b6102bd610411366004613da0565b611095565b61023c610424366004613e0f565b6111ec565b600080600061043784610e90565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506104759082610eca565b925050505b92915050565b600061047a82611a35565b6004805461049890613e60565b80601f01602080910402602001604051908101604052809291908181526020018280546104c490613e60565b80156105115780601f106104e657610100808354040283529160200191610511565b820191906000526020600020905b8154815290600101906020018083116104f457829003601f168201915b505050505081565b6060600361052683611a91565b604051602001610537929190613ecf565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806105a1575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b61062d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff84166106d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e5400000060648201526084016101fa565b6106dc85858585611bf1565b6106ea858585855a86612054565b5050505050565b6106fc8383836121f9565b505050565b81518151606091908114610797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e4754480000000000000060648201526084016101fa565b6000806107bd856000815181106107b0576107b0613fdc565b6020026020010151610e90565b915091506000806000886000815181106107d9576107d9613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561084f5761084f613666565b604051908082528060200260200182016040528015610878578160200160208202803683370190505b5090506108858385610eca565b8160008151811061089857610898613fdc565b602090810291909101015260015b868110156109ee576108c38982815181106107b0576107b0613fdc565b9096509450828614158061094157508981815181106108e4576108e4613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a600183610910919061403a565b8151811061092057610920613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156109b5576000808b838151811061095b5761095b613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6109bf8486610eca565b8282815181106109d1576109d1613fdc565b6020908102919091010152806109e68161404d565b9150506108a6565b5098975050505050505050565b6003805461049890613e60565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610b68576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b6060610bab60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c8d89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610be99190614085565b604051602081830303815290604052805190602001208c604051602001610c109190614085565b604051602081830303815290604052805190602001208c610c32576000610c35565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052612261565b9050610c9b89898989611bf1565b8415610cde5780806020019051810190610cb5919061418f565b8094508193505050610ccf89898989866020015188612054565b610cd989836124f3565b610cec565b610cec898989895a86612054565b505050505050505050565b610d0384848484612866565b50505050565b6106fc8383836128d8565b73ffffffffffffffffffffffffffffffffffffffff8516610db957604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e5460648201526084016101fa565b6060610dfc60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610e3489857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610c32576000610c35565b9050610e4289898989612a4c565b8415610e765780806020019051810190610e5c919061418f565b8094508193505050610ccf89898989866020015188612abb565b610cec898989895a86612abb565b610d0384848484612c60565b600080610ea06020610100614218565b610eaa9084614218565b9150610eb96020610100614218565b610ec3908461422c565b9050915091565b600080610edd600164010000000061403a565b90506000610eec846020614240565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610f4c575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610fd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f5200000000000000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff841661107b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101fa565b61108785858585612a4c565b6106ea858585855a86612abb565b600061112086837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa5248289896110cb5760006110ce565b60015b896110da5760006110dd565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610c79565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a382156111e4576000818060200190518101906111d69190614257565b90506111e287826124f3565b505b505050505050565b6000808251116112a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b73ffffffffffffffffffffffffffffffffffffffff8516611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101fa565b600061135283612ec1565b60f81c9050600581106113e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b60008160ff1660058111156113fe576113fe61428c565b90506000808080808560058111156114185761141861428c565b036114a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101fa565b60018560058111156114b9576114b961428c565b0361162b57875160611461154f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b61155a886000612fc4565b9250611567886020612fc4565b91508760408151811061157c5761157c613fdc565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156115d9573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d81169116149750611a2d9650505050505050565b600285600581111561163f5761163f61428c565b036117a55787516061146116d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b6116e0886000612fc4565b92506116ed886020612fc4565b91508760408151811061170257611702613fdc565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016115b7565b60038560058111156117b9576117b961428c565b036118a5576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611812908c908c906004016142bb565b602060405180830381865afa15801561182f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b60048560058111156118b9576118b961428c565b036119a5576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611912908d908c906004016142fd565b602060405180830381865afa15801561192f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a8857506001919050565b61047a82613077565b606081600003611ad457505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611afe5780611ae88161404d565b9150611af79050600a83614218565b9150611ad8565b60008167ffffffffffffffff811115611b1957611b19613666565b6040519080825280601f01601f191660200182016040528015611b43576020820181803683370190505b509050815b8515611be857611b5960018261403a565b90506000611b68600a88614218565b611b7390600a614240565b611b7d908861403a565b611b88906030614316565b905060008160f81b905080848481518110611ba557611ba5613fdc565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611bdf600a89614218565b97505050611b48565b50949350505050565b815181518114611ca9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015611ce55750600081115b15611ee557600080611d03856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091611d619190849088908590611d5257611d52613fdc565b60200260200101516001613114565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091611dbd9190859089908590611dae57611dae613fdc565b60200260200101516000613114565b90508360015b86811015611e9357611de08982815181106107b0576107b0613fdc565b9096509450818614611e4f5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611e6684868a8481518110611d5257611d52613fdc565b9350611e7f83868a8481518110611dae57611dae613fdc565b925080611e8b8161404d565b915050611dc3565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611fcf565b60005b81811015611fcd57828181518110611f0257611f02613fdc565b6020026020010151611f2d87868481518110611f2057611f20613fdc565b6020026020010151610429565b1015611fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f570000000000000000000060648201526084016101fa565b80611fc58161404d565b915050611ee8565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161204592919061432f565b60405180910390a45050505050565b6120738573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016120bc959493929190614354565b60206040518083038160008887f11580156120db573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061210091906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c8100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a4016101fa565b61220683838360016133b9565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6060808380602001905181019061227891906143bf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260026020526040812054919450919250906122b0836041612fc4565b90508181108015906122cb57506122c88260646143f6565b81105b612357576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e43450000000060648201526084016101fa565b60006123938683878051906020012060405160200161237893929190614409565b60405160208183030381529060405280519060200120613440565b905060008683876040516020016123ac93929190614430565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905290506123e78360016143f6565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf5961243c8560016143f6565b60405190815260200160405180910390a2612459898383886111ec565b6124e757604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e415455524560648201526084016101fa565b50505050509392505050565b60006125028260600151612ec1565b60f81c905060028110612597576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e000000000060648201526084016101fa565b60008160ff1660028111156125ae576125ae61428c565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156125e45786604001516125e6565b335b925060008560028111156125fc576125fc61428c565b036127135786606001518060200190518101906126199190614467565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036126695761264788848484612a4c565b6126648884845a8560405180602001604052806000815250612abb565b61285c565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156126f657600080fd5b505af115801561270a573d6000803e3d6000fd5b5050505061285c565b866060015180602001905181019061272b9190614495565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af11580156127ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127d091906144b2565b61285c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c45440060648201526084016101fa565b5050505050505050565b61287384848460006133b9565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610d0360008585855a86612abb565b81518151811461296a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e47544800000060648201526084016101fa565b60005b818110156129c6576129b48585838151811061298b5761298b613fdc565b60200260200101518584815181106129a5576129a5613fdc565b602002602001015160016133b9565b806129be8161404d565b91505061296d565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612a3e92919061432f565b60405180910390a450505050565b612a5984838360016133b9565b612a6683838360006133b9565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612a3e565b612ada8573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401612b239594939291906144cf565b60206040518083038160008887f1158015612b42573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612b6791906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e6100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a4016101fa565b8151835114612cf1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e475448000060648201526084016101fa565b825115612e3357600080612d11856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152812054875193955091935091612d609190849088908590611dae57611dae613fdc565b86519091508360015b82811015612dfa57612d868982815181106107b0576107b0613fdc565b9096509450818614612dcf5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b612de684868a8481518110611dae57611dae613fdc565b935080612df28161404d565b915050612d69565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612eaa92919061432f565b60405180910390a4610d0360008585855a86612054565b600080825111612f53576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101fa565b8160018351612f62919061403a565b81518110612f7257612f72613fdc565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612fd18260206143f6565b83511015613061576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101fa565b61306c6020836143f6565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016130ca57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461047a565b600080613122856020614240565b90506000613136600164010000000061403a565b9050600084600181111561314c5761314c61428c565b0361320b5761315d85831b886143f6565b925061316b6020600261463f565b6131798689851c84166143f6565b10613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f57000000000000000000000000000060648201526084016101fa565b613375565b600184600181111561321f5761321f61428c565b036132c75761323085831b8861403a565b925084818389901c161015613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f570000000000000000000000000060648201526084016101fa565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b5050949350505050565b6000813f80158015906133b257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806133c585610e90565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061340590828686613114565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b306040516020016134cd92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016134f693929190614409565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461353557600080fd5b50565b6000806040838503121561354b57600080fd5b823561355681613513565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461353557600080fd5b6000602082840312156135a457600080fd5b81356133b281613564565b60005b838110156135ca5781810151838201526020016135b2565b50506000910152565b600081518084526135eb8160208601602086016135af565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006133b260208301846135d3565b60006020828403121561364257600080fd5b5035919050565b60006020828403121561365b57600080fd5b81356133b281613513565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156136dc576136dc613666565b604052919050565b600067ffffffffffffffff8211156136fe576136fe613666565b5060051b60200190565b600082601f83011261371957600080fd5b8135602061372e613729836136e4565b613695565b82815260059290921b8401810191818101908684111561374d57600080fd5b8286015b848110156137685780358352918301918301613751565b509695505050505050565b600067ffffffffffffffff82111561378d5761378d613666565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126137ca57600080fd5b81356137d861372982613773565b8181528460208386010111156137ed57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561382257600080fd5b853561382d81613513565b9450602086013561383d81613513565b9350604086013567ffffffffffffffff8082111561385a57600080fd5b61386689838a01613708565b9450606088013591508082111561387c57600080fd5b61388889838a01613708565b9350608088013591508082111561389e57600080fd5b506138ab888289016137b9565b9150509295509295909350565b6000806000606084860312156138cd57600080fd5b83356138d881613513565b95602085013595506040909401359392505050565b6000806040838503121561390057600080fd5b823567ffffffffffffffff8082111561391857600080fd5b818501915085601f83011261392c57600080fd5b8135602061393c613729836136e4565b82815260059290921b8401810191818101908984111561395b57600080fd5b948201945b8386101561398257853561397381613513565b82529482019490820190613960565b9650508601359250508082111561399857600080fd5b506139a585828601613708565b9150509250929050565b600081518084526020808501945080840160005b838110156139df578151875295820195908201906001016139c3565b509495945050505050565b6020815260006133b260208301846139af565b801515811461353557600080fd5b60008060408385031215613a1e57600080fd5b8235613a2981613513565b91506020830135613a39816139fd565b809150509250929050565b60008060008060008060c08789031215613a5d57600080fd5b8635613a6881613513565b95506020870135613a7881613513565b9450604087013567ffffffffffffffff80821115613a9557600080fd5b613aa18a838b01613708565b95506060890135915080821115613ab757600080fd5b613ac38a838b01613708565b945060808901359150613ad5826139fd565b90925060a08801359080821115613aeb57600080fd5b50613af889828a016137b9565b9150509295509295509295565b60008060008060808587031215613b1b57600080fd5b8435613b2681613513565b93506020850135925060408501359150606085013567ffffffffffffffff811115613b5057600080fd5b613b5c878288016137b9565b91505092959194509250565b600080600060608486031215613b7d57600080fd5b8335613b8881613513565b9250602084013567ffffffffffffffff80821115613ba557600080fd5b613bb187838801613708565b93506040860135915080821115613bc757600080fd5b50613bd486828701613708565b9150509250925092565b60008060008060008060c08789031215613bf757600080fd5b8635613c0281613513565b95506020870135613c1281613513565b945060408701359350606087013592506080870135613c30816139fd565b915060a087013567ffffffffffffffff811115613c4c57600080fd5b613af889828a016137b9565b60008060008060808587031215613c6e57600080fd5b8435613c7981613513565b9350602085013567ffffffffffffffff80821115613c9657600080fd5b613ca288838901613708565b94506040870135915080821115613cb857600080fd5b613cc488838901613708565b93506060870135915080821115613cda57600080fd5b50613b5c878288016137b9565b60008060408385031215613cfa57600080fd5b8235613d0581613513565b91506020830135613a3981613513565b60008060408385031215613d2857600080fd5b50508035926020909101359150565b600080600080600060a08688031215613d4f57600080fd5b8535613d5a81613513565b94506020860135613d6a81613513565b93506040860135925060608601359150608086013567ffffffffffffffff811115613d9457600080fd5b6138ab888289016137b9565b600080600080600060a08688031215613db857600080fd5b8535613dc381613513565b94506020860135613dd381613513565b93506040860135613de3816139fd565b92506060860135613df3816139fd565b9150608086013567ffffffffffffffff811115613d9457600080fd5b60008060008060808587031215613e2557600080fd5b8435613e3081613513565b935060208501359250604085013567ffffffffffffffff80821115613e5457600080fd5b613cc4888389016137b9565b600181811c90821680613e7457607f821691505b602082108103613ead577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151613ec58185602086016135af565b9290920192915050565b600080845481600182811c915080831680613eeb57607f831692505b60208084108203613f23577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613f375760018114613f6a57613f97565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613f97565b60008b81526020902060005b86811015613f8f5781548b820152908501908301613f76565b505084890196505b505050505050613fd3613faa8286613eb3565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561047a5761047a61400b565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361407e5761407e61400b565b5060010190565b815160009082906020808601845b838110156140af57815185529382019390820190600101614093565b50929695505050505050565b600082601f8301126140cc57600080fd5b81516140da61372982613773565b8181528460208386010111156140ef57600080fd5b611a2d8260208301602087016135af565b60006080828403121561411257600080fd5b6040516080810167ffffffffffffffff828210818311171561413657614136613666565b8160405282935084518352602085015160208401526040850151915061415b82613513565b816040840152606085015191508082111561417557600080fd5b50614182858286016140bb565b6060830152505092915050565b600080604083850312156141a257600080fd5b825167ffffffffffffffff808211156141ba57600080fd5b6141c686838701614100565b935060208501519150808211156141dc57600080fd5b506139a5858286016140bb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082614227576142276141e9565b500490565b60008261423b5761423b6141e9565b500690565b808202811582820484141761047a5761047a61400b565b60006020828403121561426957600080fd5b815167ffffffffffffffff81111561428057600080fd5b611a2d84828501614100565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6040815260006142ce60408301856135d3565b8281036020840152613fd381856135d3565b6000602082840312156142f257600080fd5b81516133b281613564565b828152604060208201526000611a2d60408301846135d3565b60ff818116838216019081111561047a5761047a61400b565b60408152600061434260408301856139af565b8281036020840152613fd381856139af565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261438d60a08301866139af565b828103606084015261439f81866139af565b905082810360808401526143b381856135d3565b98975050505050505050565b600080604083850312156143d257600080fd5b825167ffffffffffffffff808211156143ea57600080fd5b6141c6868387016140bb565b8082018082111561047a5761047a61400b565b6000845161441b8184602089016135af565b91909101928352506020820152604001919050565b600084516144428184602089016135af565b8201848152835161445a8160208085019088016135af565b0160200195945050505050565b6000806040838503121561447a57600080fd5b825161448581613513565b6020939093015192949293505050565b6000602082840312156144a757600080fd5b81516133b281613513565b6000602082840312156144c457600080fd5b81516133b2816139fd565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261451460a08301846135d3565b979650505050505050565b600181815b8085111561457857817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561455e5761455e61400b565b8085161561456b57918102915b93841c9390800290614524565b509250929050565b60008261458f5750600161047a565b8161459c5750600061047a565b81600181146145b257600281146145bc576145d8565b600191505061047a565b60ff8411156145cd576145cd61400b565b50506001821b61047a565b5060208310610133831016604e8410600b84101617156145fb575081810a61047a565b614605838361451f565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156146375761463761400b565b029392505050565b60006133b2838361458056fea264697066735822122079e695db3f71f7354c1068131ce0278f6a73d1c4f43f4d74d449483202c3117b64736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101765760003560e01c8063a3d4926e116100d8578063db90e83c1161008c578063f242432a11610066578063f242432a146103f0578063f5d4c82014610403578063fa4e12d71461041657610176565b8063db90e83c1461036c578063e985e9c514610394578063eaec5f81146103dd57610176565b8063bd7a6c41116100bd578063bd7a6c4114610333578063ce0b514b14610346578063d7a0ad901461035957610176565b8063a3d4926e1461030d578063a3f091f51461032057610176565b80632eb2c2d61161012f5780634e1273f4116101145780634e1273f4146102d25780636c0360eb146102f2578063a22cb465146102fa57610176565b80632eb2c2d6146102aa578063437ecbe9146102bf57610176565b806306fdde031161016057806306fdde031461024c5780630e89341c146102615780632d0335ab1461027457610176565b8062fdd58e1461020357806301ffc9a714610229575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b610216610211366004613538565b610429565b6040519081526020015b60405180910390f35b61023c610237366004613592565b610480565b6040519015158152602001610220565b61025461048b565b604051610220919061361d565b61025461026f366004613630565b610519565b610216610282366004613649565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b6102bd6102b836600461380a565b61054d565b005b6102bd6102cd3660046138b8565b6106f1565b6102e56102e03660046138ed565b610701565b60405161022091906139ea565b6102546109fb565b6102bd610308366004613a0b565b610a08565b6102bd61031b366004613a44565b610a9f565b6102bd61032e366004613b05565b610cf7565b6102bd610341366004613b68565b610d09565b6102bd610354366004613bde565b610d14565b6102bd610367366004613c58565b610e84565b61037f61037a366004613630565b610e90565b60408051928352602083019190915201610220565b61023c6103a2366004613ce7565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6102166103eb366004613d15565b610eca565b6102bd6103fe366004613d37565b610ef8565b6102bd610411366004613da0565b611095565b61023c610424366004613e0f565b6111ec565b600080600061043784610e90565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506104759082610eca565b925050505b92915050565b600061047a82611a35565b6004805461049890613e60565b80601f01602080910402602001604051908101604052809291908181526020018280546104c490613e60565b80156105115780601f106104e657610100808354040283529160200191610511565b820191906000526020600020905b8154815290600101906020018083116104f457829003601f168201915b505050505081565b6060600361052683611a91565b604051602001610537929190613ecf565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806105a1575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b61062d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff84166106d0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e5400000060648201526084016101fa565b6106dc85858585611bf1565b6106ea858585855a86612054565b5050505050565b6106fc8383836121f9565b505050565b81518151606091908114610797576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e4754480000000000000060648201526084016101fa565b6000806107bd856000815181106107b0576107b0613fdc565b6020026020010151610e90565b915091506000806000886000815181106107d9576107d9613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561084f5761084f613666565b604051908082528060200260200182016040528015610878578160200160208202803683370190505b5090506108858385610eca565b8160008151811061089857610898613fdc565b602090810291909101015260015b868110156109ee576108c38982815181106107b0576107b0613fdc565b9096509450828614158061094157508981815181106108e4576108e4613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a600183610910919061403a565b8151811061092057610920613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156109b5576000808b838151811061095b5761095b613fdc565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6109bf8486610eca565b8282815181106109d1576109d1613fdc565b6020908102919091010152806109e68161404d565b9150506108a6565b5098975050505050505050565b6003805461049890613e60565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff8516610b68576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b6060610bab60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c8d89857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610be99190614085565b604051602081830303815290604052805190602001208c604051602001610c109190614085565b604051602081830303815290604052805190602001208c610c32576000610c35565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052612261565b9050610c9b89898989611bf1565b8415610cde5780806020019051810190610cb5919061418f565b8094508193505050610ccf89898989866020015188612054565b610cd989836124f3565b610cec565b610cec898989895a86612054565b505050505050505050565b610d0384848484612866565b50505050565b6106fc8383836128d8565b73ffffffffffffffffffffffffffffffffffffffff8516610db957604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e5460648201526084016101fa565b6060610dfc60405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610e3489857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610c32576000610c35565b9050610e4289898989612a4c565b8415610e765780806020019051810190610e5c919061418f565b8094508193505050610ccf89898989866020015188612abb565b610cec898989895a86612abb565b610d0384848484612c60565b600080610ea06020610100614218565b610eaa9084614218565b9150610eb96020610100614218565b610ec3908461422c565b9050915091565b600080610edd600164010000000061403a565b90506000610eec846020614240565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610f4c575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610fd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f5200000000000000000060648201526084016101fa565b73ffffffffffffffffffffffffffffffffffffffff841661107b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016101fa565b61108785858585612a4c565b6106ea858585855a86612abb565b600061112086837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa5248289896110cb5760006110ce565b60015b896110da5760006110dd565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610c79565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a382156111e4576000818060200190518101906111d69190614257565b90506111e287826124f3565b505b505050505050565b6000808251116112a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b73ffffffffffffffffffffffffffffffffffffffff8516611347576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016101fa565b600061135283612ec1565b60f81c9050600581106113e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b60008160ff1660058111156113fe576113fe61428c565b90506000808080808560058111156114185761141861428c565b036114a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016101fa565b60018560058111156114b9576114b961428c565b0361162b57875160611461154f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b61155a886000612fc4565b9250611567886020612fc4565b91508760408151811061157c5761157c613fdc565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156115d9573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d81169116149750611a2d9650505050505050565b600285600581111561163f5761163f61428c565b036117a55787516061146116d5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016101fa565b6116e0886000612fc4565b92506116ed886020612fc4565b91508760408151811061170257611702613fdc565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016115b7565b60038560058111156117b9576117b961428c565b036118a5576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611812908c908c906004016142bb565b602060405180830381865afa15801561182f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b60048560058111156118b9576118b961428c565b036119a5576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611912908d908c906004016142fd565b602060405180830381865afa15801561192f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195391906142e0565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e00000000000000000000000000000000000000000000000000000000149650611a2d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016101fa565b949350505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a8857506001919050565b61047a82613077565b606081600003611ad457505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115611afe5780611ae88161404d565b9150611af79050600a83614218565b9150611ad8565b60008167ffffffffffffffff811115611b1957611b19613666565b6040519080825280601f01601f191660200182016040528015611b43576020820181803683370190505b509050815b8515611be857611b5960018261403a565b90506000611b68600a88614218565b611b7390600a614240565b611b7d908861403a565b611b88906030614316565b905060008160f81b905080848481518110611ba557611ba5613fdc565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350611bdf600a89614218565b97505050611b48565b50949350505050565b815181518114611ca9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015611ce55750600081115b15611ee557600080611d03856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091611d619190849088908590611d5257611d52613fdc565b60200260200101516001613114565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091611dbd9190859089908590611dae57611dae613fdc565b60200260200101516000613114565b90508360015b86811015611e9357611de08982815181106107b0576107b0613fdc565b9096509450818614611e4f5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611e6684868a8481518110611d5257611d52613fdc565b9350611e7f83868a8481518110611dae57611dae613fdc565b925080611e8b8161404d565b915050611dc3565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611fcf565b60005b81811015611fcd57828181518110611f0257611f02613fdc565b6020026020010151611f2d87868481518110611f2057611f20613fdc565b6020026020010151610429565b1015611fbb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f570000000000000000000060648201526084016101fa565b80611fc58161404d565b915050611ee8565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161204592919061432f565b60405180910390a45050505050565b6120738573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016120bc959493929190614354565b60206040518083038160008887f11580156120db573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061210091906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c8100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a4016101fa565b61220683838360016133b9565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6060808380602001905181019061227891906143bf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260026020526040812054919450919250906122b0836041612fc4565b90508181108015906122cb57506122c88260646143f6565b81105b612357576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e43450000000060648201526084016101fa565b60006123938683878051906020012060405160200161237893929190614409565b60405160208183030381529060405280519060200120613440565b905060008683876040516020016123ac93929190614430565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe081840301815291905290506123e78360016143f6565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf5961243c8560016143f6565b60405190815260200160405180910390a2612459898383886111ec565b6124e757604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e415455524560648201526084016101fa565b50505050509392505050565b60006125028260600151612ec1565b60f81c905060028110612597576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e000000000060648201526084016101fa565b60008160ff1660028111156125ae576125ae61428c565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156125e45786604001516125e6565b335b925060008560028111156125fc576125fc61428c565b036127135786606001518060200190518101906126199190614467565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036126695761264788848484612a4c565b6126648884845a8560405180602001604052806000815250612abb565b61285c565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156126f657600080fd5b505af115801561270a573d6000803e3d6000fd5b5050505061285c565b866060015180602001905181019061272b9190614495565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af11580156127ac573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127d091906144b2565b61285c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c45440060648201526084016101fa565b5050505050505050565b61287384848460006133b9565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610d0360008585855a86612abb565b81518151811461296a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e47544800000060648201526084016101fa565b60005b818110156129c6576129b48585838151811061298b5761298b613fdc565b60200260200101518584815181106129a5576129a5613fdc565b602002602001015160016133b9565b806129be8161404d565b91505061296d565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612a3e92919061432f565b60405180910390a450505050565b612a5984838360016133b9565b612a6683838360006133b9565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101612a3e565b612ada8573ffffffffffffffffffffffffffffffffffffffff1661337f565b156111e45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401612b239594939291906144cf565b60206040518083038160008887f1158015612b42573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190612b6791906142e0565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e6100000000000000000000000000000000000000000000000000000000146111e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a4016101fa565b8151835114612cf1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e475448000060648201526084016101fa565b825115612e3357600080612d11856000815181106107b0576107b0613fdc565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152812054875193955091935091612d609190849088908590611dae57611dae613fdc565b86519091508360015b82811015612dfa57612d868982815181106107b0576107b0613fdc565b9096509450818614612dcf5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b612de684868a8481518110611dae57611dae613fdc565b935080612df28161404d565b915050612d69565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051612eaa92919061432f565b60405180910390a4610d0360008585855a86612054565b600080825111612f53576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016101fa565b8160018351612f62919061403a565b81518110612f7257612f72613fdc565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612fd18260206143f6565b83511015613061576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016101fa565b61306c6020836143f6565b929092015192915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016130ca57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461047a565b600080613122856020614240565b90506000613136600164010000000061403a565b9050600084600181111561314c5761314c61428c565b0361320b5761315d85831b886143f6565b925061316b6020600261463f565b6131798689851c84166143f6565b10613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f57000000000000000000000000000060648201526084016101fa565b613375565b600184600181111561321f5761321f61428c565b036132c75761323085831b8861403a565b925084818389901c161015613206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f570000000000000000000000000060648201526084016101fa565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a4016101fa565b5050949350505050565b6000813f80158015906133b257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806133c585610e90565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061340590828686613114565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b306040516020016134cd92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016134f693929190614409565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461353557600080fd5b50565b6000806040838503121561354b57600080fd5b823561355681613513565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461353557600080fd5b6000602082840312156135a457600080fd5b81356133b281613564565b60005b838110156135ca5781810151838201526020016135b2565b50506000910152565b600081518084526135eb8160208601602086016135af565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006133b260208301846135d3565b60006020828403121561364257600080fd5b5035919050565b60006020828403121561365b57600080fd5b81356133b281613513565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156136dc576136dc613666565b604052919050565b600067ffffffffffffffff8211156136fe576136fe613666565b5060051b60200190565b600082601f83011261371957600080fd5b8135602061372e613729836136e4565b613695565b82815260059290921b8401810191818101908684111561374d57600080fd5b8286015b848110156137685780358352918301918301613751565b509695505050505050565b600067ffffffffffffffff82111561378d5761378d613666565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f8301126137ca57600080fd5b81356137d861372982613773565b8181528460208386010111156137ed57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561382257600080fd5b853561382d81613513565b9450602086013561383d81613513565b9350604086013567ffffffffffffffff8082111561385a57600080fd5b61386689838a01613708565b9450606088013591508082111561387c57600080fd5b61388889838a01613708565b9350608088013591508082111561389e57600080fd5b506138ab888289016137b9565b9150509295509295909350565b6000806000606084860312156138cd57600080fd5b83356138d881613513565b95602085013595506040909401359392505050565b6000806040838503121561390057600080fd5b823567ffffffffffffffff8082111561391857600080fd5b818501915085601f83011261392c57600080fd5b8135602061393c613729836136e4565b82815260059290921b8401810191818101908984111561395b57600080fd5b948201945b8386101561398257853561397381613513565b82529482019490820190613960565b9650508601359250508082111561399857600080fd5b506139a585828601613708565b9150509250929050565b600081518084526020808501945080840160005b838110156139df578151875295820195908201906001016139c3565b509495945050505050565b6020815260006133b260208301846139af565b801515811461353557600080fd5b60008060408385031215613a1e57600080fd5b8235613a2981613513565b91506020830135613a39816139fd565b809150509250929050565b60008060008060008060c08789031215613a5d57600080fd5b8635613a6881613513565b95506020870135613a7881613513565b9450604087013567ffffffffffffffff80821115613a9557600080fd5b613aa18a838b01613708565b95506060890135915080821115613ab757600080fd5b613ac38a838b01613708565b945060808901359150613ad5826139fd565b90925060a08801359080821115613aeb57600080fd5b50613af889828a016137b9565b9150509295509295509295565b60008060008060808587031215613b1b57600080fd5b8435613b2681613513565b93506020850135925060408501359150606085013567ffffffffffffffff811115613b5057600080fd5b613b5c878288016137b9565b91505092959194509250565b600080600060608486031215613b7d57600080fd5b8335613b8881613513565b9250602084013567ffffffffffffffff80821115613ba557600080fd5b613bb187838801613708565b93506040860135915080821115613bc757600080fd5b50613bd486828701613708565b9150509250925092565b60008060008060008060c08789031215613bf757600080fd5b8635613c0281613513565b95506020870135613c1281613513565b945060408701359350606087013592506080870135613c30816139fd565b915060a087013567ffffffffffffffff811115613c4c57600080fd5b613af889828a016137b9565b60008060008060808587031215613c6e57600080fd5b8435613c7981613513565b9350602085013567ffffffffffffffff80821115613c9657600080fd5b613ca288838901613708565b94506040870135915080821115613cb857600080fd5b613cc488838901613708565b93506060870135915080821115613cda57600080fd5b50613b5c878288016137b9565b60008060408385031215613cfa57600080fd5b8235613d0581613513565b91506020830135613a3981613513565b60008060408385031215613d2857600080fd5b50508035926020909101359150565b600080600080600060a08688031215613d4f57600080fd5b8535613d5a81613513565b94506020860135613d6a81613513565b93506040860135925060608601359150608086013567ffffffffffffffff811115613d9457600080fd5b6138ab888289016137b9565b600080600080600060a08688031215613db857600080fd5b8535613dc381613513565b94506020860135613dd381613513565b93506040860135613de3816139fd565b92506060860135613df3816139fd565b9150608086013567ffffffffffffffff811115613d9457600080fd5b60008060008060808587031215613e2557600080fd5b8435613e3081613513565b935060208501359250604085013567ffffffffffffffff80821115613e5457600080fd5b613cc4888389016137b9565b600181811c90821680613e7457607f821691505b602082108103613ead577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151613ec58185602086016135af565b9290920192915050565b600080845481600182811c915080831680613eeb57607f831692505b60208084108203613f23577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015613f375760018114613f6a57613f97565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650613f97565b60008b81526020902060005b86811015613f8f5781548b820152908501908301613f76565b505084890196505b505050505050613fd3613faa8286613eb3565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561047a5761047a61400b565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361407e5761407e61400b565b5060010190565b815160009082906020808601845b838110156140af57815185529382019390820190600101614093565b50929695505050505050565b600082601f8301126140cc57600080fd5b81516140da61372982613773565b8181528460208386010111156140ef57600080fd5b611a2d8260208301602087016135af565b60006080828403121561411257600080fd5b6040516080810167ffffffffffffffff828210818311171561413657614136613666565b8160405282935084518352602085015160208401526040850151915061415b82613513565b816040840152606085015191508082111561417557600080fd5b50614182858286016140bb565b6060830152505092915050565b600080604083850312156141a257600080fd5b825167ffffffffffffffff808211156141ba57600080fd5b6141c686838701614100565b935060208501519150808211156141dc57600080fd5b506139a5858286016140bb565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082614227576142276141e9565b500490565b60008261423b5761423b6141e9565b500690565b808202811582820484141761047a5761047a61400b565b60006020828403121561426957600080fd5b815167ffffffffffffffff81111561428057600080fd5b611a2d84828501614100565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6040815260006142ce60408301856135d3565b8281036020840152613fd381856135d3565b6000602082840312156142f257600080fd5b81516133b281613564565b828152604060208201526000611a2d60408301846135d3565b60ff818116838216019081111561047a5761047a61400b565b60408152600061434260408301856139af565b8281036020840152613fd381856139af565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261438d60a08301866139af565b828103606084015261439f81866139af565b905082810360808401526143b381856135d3565b98975050505050505050565b600080604083850312156143d257600080fd5b825167ffffffffffffffff808211156143ea57600080fd5b6141c6868387016140bb565b8082018082111561047a5761047a61400b565b6000845161441b8184602089016135af565b91909101928352506020820152604001919050565b600084516144428184602089016135af565b8201848152835161445a8160208085019088016135af565b0160200195945050505050565b6000806040838503121561447a57600080fd5b825161448581613513565b6020939093015192949293505050565b6000602082840312156144a757600080fd5b81516133b281613513565b6000602082840312156144c457600080fd5b81516133b2816139fd565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261451460a08301846135d3565b979650505050505050565b600181815b8085111561457857817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561455e5761455e61400b565b8085161561456b57918102915b93841c9390800290614524565b509250929050565b60008261458f5750600161047a565b8161459c5750600061047a565b81600181146145b257600281146145bc576145d8565b600191505061047a565b60ff8411156145cd576145cd61400b565b50506001821b61047a565b5060208310610133831016604e8410600b84101617156145fb575081810a61047a565b614605838361451f565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156146375761463761400b565b029392505050565b60006133b2838361458056fea264697066735822122079e695db3f71f7354c1068131ce0278f6a73d1c4f43f4d74d449483202c3117b64736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC1155MetadataMock.sol/ERC1155MetadataMock.json b/src/artifacts/contracts/mocks/ERC1155MetadataMock.sol/ERC1155MetadataMock.json index 1d061de..ba4a432 100644 --- a/src/artifacts/contracts/mocks/ERC1155MetadataMock.sol/ERC1155MetadataMock.json +++ b/src/artifacts/contracts/mocks/ERC1155MetadataMock.sol/ERC1155MetadataMock.json @@ -388,8 +388,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b50604051620021ed380380620021ed833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b611e7a80620003736000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c80634e1273f411610081578063a22cb4651161005b578063a22cb46514610234578063e985e9c514610247578063f242432a14610290576100d3565b80634e1273f4146101f95780636c0360eb146102195780637e518ec814610221576100d3565b80630e89341c116100b25780630e89341c146101be5780631ea430d4146101d15780632eb2c2d6146101e6576100d3565b8062fdd58e1461016057806301ffc9a71461018657806306fdde03146101a9575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d657461646174614d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61017361016e3660046113a8565b6102a3565b6040519081526020015b60405180910390f35b610199610194366004611400565b6102d9565b604051901515815260200161017d565b6101b16102e4565b60405161017d919061148b565b6101b16101cc36600461149e565b610372565b6101e46101df3660046115c4565b6103a6565b005b6101e46101f4366004611697565b6103b2565b61020c610207366004611741565b610556565b60405161017d919061183c565b6101b16106f6565b6101e461022f36600461184f565b610703565b6101e4610242366004611898565b61070c565b6101996102553660046118d4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101e461029e366004611907565b6107a3565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006102d382610940565b600380546102f19061196c565b80601f016020809104026020016040519081016040528092919081815260200182805461031d9061196c565b801561036a5780601f1061033f5761010080835404028352916020019161036a565b820191906000526020600020905b81548152906001019060200180831161034d57829003601f168201915b505050505081565b6060600261037f8361099c565b6040516020016103909291906119bf565b6040516020818303038152906040529050919050565b6103af81610afc565b50565b3373ffffffffffffffffffffffffffffffffffffffff86161480610406575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610492576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610157565b61054185858585610c47565b61054f858585855a86610eac565b5050505050565b606081518351146105e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610157565b6000835167ffffffffffffffff811115610605576106056114b7565b60405190808252806020026020018201604052801561062e578160200160208202803683370190505b50905060005b84518110156106ee5760008086838151811061065257610652611a8c565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106a8576106a8611a8c565b60200260200101518152602001908152602001600020548282815181106106d1576106d1611a8c565b6020908102919091010152806106e681611aea565b915050610634565b509392505050565b600280546102f19061196c565b6103af81611035565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff861614806107f7575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610883576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610926576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610157565b61093285858585611045565b61054f858585855a86611129565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161099357506001919050565b6102d3826112a8565b6060816000036109df57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a0957806109f381611aea565b9150610a029050600a83611b22565b91506109e3565b60008167ffffffffffffffff811115610a2457610a246114b7565b6040519080825280601f01601f191660200182016040528015610a4e576020820181803683370190505b509050815b8515610af357610a64600182611b5d565b90506000610a73600a88611b22565b610a7e90600a611b70565b610a889088611b5d565b610a93906030611b87565b905060008160f81b905080848481518110610ab057610ab0611a8c565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610aea600a89611b22565b97505050610a53565b50949350505050565b600060028054610b0b9061196c565b80601f0160208091040260200160405190810160405280929190818152602001828054610b379061196c565b8015610b845780601f10610b5957610100808354040283529160200191610b84565b820191906000526020600020905b815481529060010190602001808311610b6757829003601f168201915b50505050509050606060005b8351811015610c415782610bbc858381518110610baf57610baf611a8c565b602002602001015161099c565b604051602001610bcd929190611ba0565b6040516020818303038152906040529150838181518110610bf057610bf0611a8c565b60200260200101517f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b83604051610c27919061148b565b60405180910390a280610c3981611aea565b915050610b90565b50505050565b8051825114610cd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610157565b815160005b81811015610e2657828181518110610cf757610cf7611a8c565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d5157610d51611a8c565b602002602001015181526020019081526020016000206000828254610d769190611b5d565b92505081905550828181518110610d8f57610d8f611a8c565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610de957610de9611a8c565b602002602001015181526020019081526020016000206000828254610e0e9190611bc6565b90915550819050610e1e81611aea565b915050610cdd565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e9d929190611bd9565b60405180910390a45050505050565b610ecb8573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f14959493929190611c07565b60206040518083038160008887f1158015610f33573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f589190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610157565b505b505050505050565b60026110418282611cda565b5050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611083908490611b5d565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110c6908490611bc6565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6111488573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401611191959493929190611df4565b60206040518083038160008887f11580156111b0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111d59190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610157565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016112fb57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102d3565b6000813f801580159061137857507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146113a357600080fd5b919050565b600080604083850312156113bb57600080fd5b6113c48361137f565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146103af57600080fd5b60006020828403121561141257600080fd5b8135611378816113d2565b60005b83811015611438578181015183820152602001611420565b50506000910152565b6000815180845261145981602086016020860161141d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006113786020830184611441565b6000602082840312156114b057600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561152d5761152d6114b7565b604052919050565b600067ffffffffffffffff82111561154f5761154f6114b7565b5060051b60200190565b600082601f83011261156a57600080fd5b8135602061157f61157a83611535565b6114e6565b82815260059290921b8401810191818101908684111561159e57600080fd5b8286015b848110156115b957803583529183019183016115a2565b509695505050505050565b6000602082840312156115d657600080fd5b813567ffffffffffffffff8111156115ed57600080fd5b6115f984828501611559565b949350505050565b600067ffffffffffffffff83111561161b5761161b6114b7565b61164c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f860116016114e6565b905082815283838301111561166057600080fd5b828260208301376000602084830101529392505050565b600082601f83011261168857600080fd5b61137883833560208501611601565b600080600080600060a086880312156116af57600080fd5b6116b88661137f565b94506116c66020870161137f565b9350604086013567ffffffffffffffff808211156116e357600080fd5b6116ef89838a01611559565b9450606088013591508082111561170557600080fd5b61171189838a01611559565b9350608088013591508082111561172757600080fd5b5061173488828901611677565b9150509295509295909350565b6000806040838503121561175457600080fd5b823567ffffffffffffffff8082111561176c57600080fd5b818501915085601f83011261178057600080fd5b8135602061179061157a83611535565b82815260059290921b840181019181810190898411156117af57600080fd5b948201945b838610156117d4576117c58661137f565b825294820194908201906117b4565b965050860135925050808211156117ea57600080fd5b506117f785828601611559565b9150509250929050565b600081518084526020808501945080840160005b8381101561183157815187529582019590820190600101611815565b509495945050505050565b6020815260006113786020830184611801565b60006020828403121561186157600080fd5b813567ffffffffffffffff81111561187857600080fd5b8201601f8101841361188957600080fd5b6115f984823560208401611601565b600080604083850312156118ab57600080fd5b6118b48361137f565b9150602083013580151581146118c957600080fd5b809150509250929050565b600080604083850312156118e757600080fd5b6118f08361137f565b91506118fe6020840161137f565b90509250929050565b600080600080600060a0868803121561191f57600080fd5b6119288661137f565b94506119366020870161137f565b93506040860135925060608601359150608086013567ffffffffffffffff81111561196057600080fd5b61173488828901611677565b600181811c9082168061198057607f821691505b6020821081036119b9577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008084546119cd8161196c565b600182811680156119e55760018114611a1857611a47565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0084168752821515830287019450611a47565b8860005260208060002060005b85811015611a3e5781548a820152908401908201611a25565b50505082870194505b505050508351611a5b81836020880161141d565b7f2e6a736f6e0000000000000000000000000000000000000000000000000000009101908152600501949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b1b57611b1b611abb565b5060010190565b600082611b58577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156102d3576102d3611abb565b80820281158282048414176102d3576102d3611abb565b60ff81811683821601908111156102d3576102d3611abb565b60008351611bb281846020880161141d565b835190830190611a5b81836020880161141d565b808201808211156102d3576102d3611abb565b604081526000611bec6040830185611801565b8281036020840152611bfe8185611801565b95945050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4060a0830186611801565b8281036060840152611c528186611801565b90508281036080840152611c668185611441565b98975050505050505050565b600060208284031215611c8457600080fd5b8151611378816113d2565b601f821115611cd557600081815260208120601f850160051c81016020861015611cb65750805b601f850160051c820191505b8181101561102d57828155600101611cc2565b505050565b815167ffffffffffffffff811115611cf457611cf46114b7565b611d0881611d02845461196c565b84611c8f565b602080601f831160018114611d5b5760008415611d255750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855561102d565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015611da857888601518255948401946001909101908401611d89565b5085821015611de457878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611e3960a0830184611441565b97965050505050505056fea26469706673582212202cb990f2ab4fb6c2589e6fc23513a2c2f55f65463acbffae29db00a62968884264736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100d35760003560e01c80634e1273f411610081578063a22cb4651161005b578063a22cb46514610234578063e985e9c514610247578063f242432a14610290576100d3565b80634e1273f4146101f95780636c0360eb146102195780637e518ec814610221576100d3565b80630e89341c116100b25780630e89341c146101be5780631ea430d4146101d15780632eb2c2d6146101e6576100d3565b8062fdd58e1461016057806301ffc9a71461018657806306fdde03146101a9575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d657461646174614d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61017361016e3660046113a8565b6102a3565b6040519081526020015b60405180910390f35b610199610194366004611400565b6102d9565b604051901515815260200161017d565b6101b16102e4565b60405161017d919061148b565b6101b16101cc36600461149e565b610372565b6101e46101df3660046115c4565b6103a6565b005b6101e46101f4366004611697565b6103b2565b61020c610207366004611741565b610556565b60405161017d919061183c565b6101b16106f6565b6101e461022f36600461184f565b610703565b6101e4610242366004611898565b61070c565b6101996102553660046118d4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101e461029e366004611907565b6107a3565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006102d382610940565b600380546102f19061196c565b80601f016020809104026020016040519081016040528092919081815260200182805461031d9061196c565b801561036a5780601f1061033f5761010080835404028352916020019161036a565b820191906000526020600020905b81548152906001019060200180831161034d57829003601f168201915b505050505081565b6060600261037f8361099c565b6040516020016103909291906119bf565b6040516020818303038152906040529050919050565b6103af81610afc565b50565b3373ffffffffffffffffffffffffffffffffffffffff86161480610406575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610492576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610157565b61054185858585610c47565b61054f858585855a86610eac565b5050505050565b606081518351146105e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610157565b6000835167ffffffffffffffff811115610605576106056114b7565b60405190808252806020026020018201604052801561062e578160200160208202803683370190505b50905060005b84518110156106ee5760008086838151811061065257610652611a8c565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106a8576106a8611a8c565b60200260200101518152602001908152602001600020548282815181106106d1576106d1611a8c565b6020908102919091010152806106e681611aea565b915050610634565b509392505050565b600280546102f19061196c565b6103af81611035565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff861614806107f7575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610883576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610926576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610157565b61093285858585611045565b61054f858585855a86611129565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161099357506001919050565b6102d3826112a8565b6060816000036109df57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a0957806109f381611aea565b9150610a029050600a83611b22565b91506109e3565b60008167ffffffffffffffff811115610a2457610a246114b7565b6040519080825280601f01601f191660200182016040528015610a4e576020820181803683370190505b509050815b8515610af357610a64600182611b5d565b90506000610a73600a88611b22565b610a7e90600a611b70565b610a889088611b5d565b610a93906030611b87565b905060008160f81b905080848481518110610ab057610ab0611a8c565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610aea600a89611b22565b97505050610a53565b50949350505050565b600060028054610b0b9061196c565b80601f0160208091040260200160405190810160405280929190818152602001828054610b379061196c565b8015610b845780601f10610b5957610100808354040283529160200191610b84565b820191906000526020600020905b815481529060010190602001808311610b6757829003601f168201915b50505050509050606060005b8351811015610c415782610bbc858381518110610baf57610baf611a8c565b602002602001015161099c565b604051602001610bcd929190611ba0565b6040516020818303038152906040529150838181518110610bf057610bf0611a8c565b60200260200101517f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b83604051610c27919061148b565b60405180910390a280610c3981611aea565b915050610b90565b50505050565b8051825114610cd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610157565b815160005b81811015610e2657828181518110610cf757610cf7611a8c565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d5157610d51611a8c565b602002602001015181526020019081526020016000206000828254610d769190611b5d565b92505081905550828181518110610d8f57610d8f611a8c565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610de957610de9611a8c565b602002602001015181526020019081526020016000206000828254610e0e9190611bc6565b90915550819050610e1e81611aea565b915050610cdd565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e9d929190611bd9565b60405180910390a45050505050565b610ecb8573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f14959493929190611c07565b60206040518083038160008887f1158015610f33573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f589190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610157565b505b505050505050565b60026110418282611cda565b5050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611083908490611b5d565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110c6908490611bc6565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6111488573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401611191959493929190611df4565b60206040518083038160008887f11580156111b0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111d59190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610157565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016112fb57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102d3565b6000813f801580159061137857507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146113a357600080fd5b919050565b600080604083850312156113bb57600080fd5b6113c48361137f565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146103af57600080fd5b60006020828403121561141257600080fd5b8135611378816113d2565b60005b83811015611438578181015183820152602001611420565b50506000910152565b6000815180845261145981602086016020860161141d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006113786020830184611441565b6000602082840312156114b057600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561152d5761152d6114b7565b604052919050565b600067ffffffffffffffff82111561154f5761154f6114b7565b5060051b60200190565b600082601f83011261156a57600080fd5b8135602061157f61157a83611535565b6114e6565b82815260059290921b8401810191818101908684111561159e57600080fd5b8286015b848110156115b957803583529183019183016115a2565b509695505050505050565b6000602082840312156115d657600080fd5b813567ffffffffffffffff8111156115ed57600080fd5b6115f984828501611559565b949350505050565b600067ffffffffffffffff83111561161b5761161b6114b7565b61164c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f860116016114e6565b905082815283838301111561166057600080fd5b828260208301376000602084830101529392505050565b600082601f83011261168857600080fd5b61137883833560208501611601565b600080600080600060a086880312156116af57600080fd5b6116b88661137f565b94506116c66020870161137f565b9350604086013567ffffffffffffffff808211156116e357600080fd5b6116ef89838a01611559565b9450606088013591508082111561170557600080fd5b61171189838a01611559565b9350608088013591508082111561172757600080fd5b5061173488828901611677565b9150509295509295909350565b6000806040838503121561175457600080fd5b823567ffffffffffffffff8082111561176c57600080fd5b818501915085601f83011261178057600080fd5b8135602061179061157a83611535565b82815260059290921b840181019181810190898411156117af57600080fd5b948201945b838610156117d4576117c58661137f565b825294820194908201906117b4565b965050860135925050808211156117ea57600080fd5b506117f785828601611559565b9150509250929050565b600081518084526020808501945080840160005b8381101561183157815187529582019590820190600101611815565b509495945050505050565b6020815260006113786020830184611801565b60006020828403121561186157600080fd5b813567ffffffffffffffff81111561187857600080fd5b8201601f8101841361188957600080fd5b6115f984823560208401611601565b600080604083850312156118ab57600080fd5b6118b48361137f565b9150602083013580151581146118c957600080fd5b809150509250929050565b600080604083850312156118e757600080fd5b6118f08361137f565b91506118fe6020840161137f565b90509250929050565b600080600080600060a0868803121561191f57600080fd5b6119288661137f565b94506119366020870161137f565b93506040860135925060608601359150608086013567ffffffffffffffff81111561196057600080fd5b61173488828901611677565b600181811c9082168061198057607f821691505b6020821081036119b9577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008084546119cd8161196c565b600182811680156119e55760018114611a1857611a47565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0084168752821515830287019450611a47565b8860005260208060002060005b85811015611a3e5781548a820152908401908201611a25565b50505082870194505b505050508351611a5b81836020880161141d565b7f2e6a736f6e0000000000000000000000000000000000000000000000000000009101908152600501949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b1b57611b1b611abb565b5060010190565b600082611b58577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156102d3576102d3611abb565b80820281158282048414176102d3576102d3611abb565b60ff81811683821601908111156102d3576102d3611abb565b60008351611bb281846020880161141d565b835190830190611a5b81836020880161141d565b808201808211156102d3576102d3611abb565b604081526000611bec6040830185611801565b8281036020840152611bfe8185611801565b95945050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4060a0830186611801565b8281036060840152611c528186611801565b90508281036080840152611c668185611441565b98975050505050505050565b600060208284031215611c8457600080fd5b8151611378816113d2565b601f821115611cd557600081815260208120601f850160051c81016020861015611cb65750805b601f850160051c820191505b8181101561102d57828155600101611cc2565b505050565b815167ffffffffffffffff811115611cf457611cf46114b7565b611d0881611d02845461196c565b84611c8f565b602080601f831160018114611d5b5760008415611d255750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855561102d565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015611da857888601518255948401946001909101908401611d89565b5085821015611de457878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611e3960a0830184611441565b97965050505050505056fea26469706673582212202cb990f2ab4fb6c2589e6fc23513a2c2f55f65463acbffae29db00a62968884264736f6c63430008120033", + "bytecode": "0x60806040523480156200001157600080fd5b50604051620021ed380380620021ed833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b611e7a80620003736000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c80634e1273f411610081578063a22cb4651161005b578063a22cb46514610234578063e985e9c514610247578063f242432a14610290576100d3565b80634e1273f4146101f95780636c0360eb146102195780637e518ec814610221576100d3565b80630e89341c116100b25780630e89341c146101be5780631ea430d4146101d15780632eb2c2d6146101e6576100d3565b8062fdd58e1461016057806301ffc9a71461018657806306fdde03146101a9575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d657461646174614d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61017361016e3660046113a8565b6102a3565b6040519081526020015b60405180910390f35b610199610194366004611400565b6102d9565b604051901515815260200161017d565b6101b16102e4565b60405161017d919061148b565b6101b16101cc36600461149e565b610372565b6101e46101df3660046115c4565b6103a6565b005b6101e46101f4366004611697565b6103b2565b61020c610207366004611741565b610556565b60405161017d919061183c565b6101b16106f6565b6101e461022f36600461184f565b610703565b6101e4610242366004611898565b61070c565b6101996102553660046118d4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101e461029e366004611907565b6107a3565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006102d382610940565b600380546102f19061196c565b80601f016020809104026020016040519081016040528092919081815260200182805461031d9061196c565b801561036a5780601f1061033f5761010080835404028352916020019161036a565b820191906000526020600020905b81548152906001019060200180831161034d57829003601f168201915b505050505081565b6060600261037f8361099c565b6040516020016103909291906119bf565b6040516020818303038152906040529050919050565b6103af81610afc565b50565b3373ffffffffffffffffffffffffffffffffffffffff86161480610406575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610492576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610157565b61054185858585610c47565b61054f858585855a86610eac565b5050505050565b606081518351146105e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610157565b6000835167ffffffffffffffff811115610605576106056114b7565b60405190808252806020026020018201604052801561062e578160200160208202803683370190505b50905060005b84518110156106ee5760008086838151811061065257610652611a8c565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106a8576106a8611a8c565b60200260200101518152602001908152602001600020548282815181106106d1576106d1611a8c565b6020908102919091010152806106e681611aea565b915050610634565b509392505050565b600280546102f19061196c565b6103af81611035565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff861614806107f7575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610883576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610926576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610157565b61093285858585611045565b61054f858585855a86611129565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161099357506001919050565b6102d3826112a8565b6060816000036109df57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a0957806109f381611aea565b9150610a029050600a83611b22565b91506109e3565b60008167ffffffffffffffff811115610a2457610a246114b7565b6040519080825280601f01601f191660200182016040528015610a4e576020820181803683370190505b509050815b8515610af357610a64600182611b5d565b90506000610a73600a88611b22565b610a7e90600a611b70565b610a889088611b5d565b610a93906030611b87565b905060008160f81b905080848481518110610ab057610ab0611a8c565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610aea600a89611b22565b97505050610a53565b50949350505050565b600060028054610b0b9061196c565b80601f0160208091040260200160405190810160405280929190818152602001828054610b379061196c565b8015610b845780601f10610b5957610100808354040283529160200191610b84565b820191906000526020600020905b815481529060010190602001808311610b6757829003601f168201915b50505050509050606060005b8351811015610c415782610bbc858381518110610baf57610baf611a8c565b602002602001015161099c565b604051602001610bcd929190611ba0565b6040516020818303038152906040529150838181518110610bf057610bf0611a8c565b60200260200101517f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b83604051610c27919061148b565b60405180910390a280610c3981611aea565b915050610b90565b50505050565b8051825114610cd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610157565b815160005b81811015610e2657828181518110610cf757610cf7611a8c565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d5157610d51611a8c565b602002602001015181526020019081526020016000206000828254610d769190611b5d565b92505081905550828181518110610d8f57610d8f611a8c565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610de957610de9611a8c565b602002602001015181526020019081526020016000206000828254610e0e9190611bc6565b90915550819050610e1e81611aea565b915050610cdd565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e9d929190611bd9565b60405180910390a45050505050565b610ecb8573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f14959493929190611c07565b60206040518083038160008887f1158015610f33573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f589190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610157565b505b505050505050565b60026110418282611cda565b5050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611083908490611b5d565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110c6908490611bc6565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6111488573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401611191959493929190611df4565b60206040518083038160008887f11580156111b0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111d59190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610157565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016112fb57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102d3565b6000813f801580159061137857507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146113a357600080fd5b919050565b600080604083850312156113bb57600080fd5b6113c48361137f565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146103af57600080fd5b60006020828403121561141257600080fd5b8135611378816113d2565b60005b83811015611438578181015183820152602001611420565b50506000910152565b6000815180845261145981602086016020860161141d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006113786020830184611441565b6000602082840312156114b057600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561152d5761152d6114b7565b604052919050565b600067ffffffffffffffff82111561154f5761154f6114b7565b5060051b60200190565b600082601f83011261156a57600080fd5b8135602061157f61157a83611535565b6114e6565b82815260059290921b8401810191818101908684111561159e57600080fd5b8286015b848110156115b957803583529183019183016115a2565b509695505050505050565b6000602082840312156115d657600080fd5b813567ffffffffffffffff8111156115ed57600080fd5b6115f984828501611559565b949350505050565b600067ffffffffffffffff83111561161b5761161b6114b7565b61164c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f860116016114e6565b905082815283838301111561166057600080fd5b828260208301376000602084830101529392505050565b600082601f83011261168857600080fd5b61137883833560208501611601565b600080600080600060a086880312156116af57600080fd5b6116b88661137f565b94506116c66020870161137f565b9350604086013567ffffffffffffffff808211156116e357600080fd5b6116ef89838a01611559565b9450606088013591508082111561170557600080fd5b61171189838a01611559565b9350608088013591508082111561172757600080fd5b5061173488828901611677565b9150509295509295909350565b6000806040838503121561175457600080fd5b823567ffffffffffffffff8082111561176c57600080fd5b818501915085601f83011261178057600080fd5b8135602061179061157a83611535565b82815260059290921b840181019181810190898411156117af57600080fd5b948201945b838610156117d4576117c58661137f565b825294820194908201906117b4565b965050860135925050808211156117ea57600080fd5b506117f785828601611559565b9150509250929050565b600081518084526020808501945080840160005b8381101561183157815187529582019590820190600101611815565b509495945050505050565b6020815260006113786020830184611801565b60006020828403121561186157600080fd5b813567ffffffffffffffff81111561187857600080fd5b8201601f8101841361188957600080fd5b6115f984823560208401611601565b600080604083850312156118ab57600080fd5b6118b48361137f565b9150602083013580151581146118c957600080fd5b809150509250929050565b600080604083850312156118e757600080fd5b6118f08361137f565b91506118fe6020840161137f565b90509250929050565b600080600080600060a0868803121561191f57600080fd5b6119288661137f565b94506119366020870161137f565b93506040860135925060608601359150608086013567ffffffffffffffff81111561196057600080fd5b61173488828901611677565b600181811c9082168061198057607f821691505b6020821081036119b9577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008084546119cd8161196c565b600182811680156119e55760018114611a1857611a47565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0084168752821515830287019450611a47565b8860005260208060002060005b85811015611a3e5781548a820152908401908201611a25565b50505082870194505b505050508351611a5b81836020880161141d565b7f2e6a736f6e0000000000000000000000000000000000000000000000000000009101908152600501949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b1b57611b1b611abb565b5060010190565b600082611b58577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156102d3576102d3611abb565b80820281158282048414176102d3576102d3611abb565b60ff81811683821601908111156102d3576102d3611abb565b60008351611bb281846020880161141d565b835190830190611a5b81836020880161141d565b808201808211156102d3576102d3611abb565b604081526000611bec6040830185611801565b8281036020840152611bfe8185611801565b95945050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4060a0830186611801565b8281036060840152611c528186611801565b90508281036080840152611c668185611441565b98975050505050505050565b600060208284031215611c8457600080fd5b8151611378816113d2565b601f821115611cd557600081815260208120601f850160051c81016020861015611cb65750805b601f850160051c820191505b8181101561102d57828155600101611cc2565b505050565b815167ffffffffffffffff811115611cf457611cf46114b7565b611d0881611d02845461196c565b84611c8f565b602080601f831160018114611d5b5760008415611d255750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855561102d565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015611da857888601518255948401946001909101908401611d89565b5085821015611de457878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611e3960a0830184611441565b97965050505050505056fea2646970667358221220f455c6a46a06091718800aa11c3e419215e2d12b477fef504799d91abe3e489264736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100d35760003560e01c80634e1273f411610081578063a22cb4651161005b578063a22cb46514610234578063e985e9c514610247578063f242432a14610290576100d3565b80634e1273f4146101f95780636c0360eb146102195780637e518ec814610221576100d3565b80630e89341c116100b25780630e89341c146101be5780631ea430d4146101d15780632eb2c2d6146101e6576100d3565b8062fdd58e1461016057806301ffc9a71461018657806306fdde03146101a9575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d657461646174614d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61017361016e3660046113a8565b6102a3565b6040519081526020015b60405180910390f35b610199610194366004611400565b6102d9565b604051901515815260200161017d565b6101b16102e4565b60405161017d919061148b565b6101b16101cc36600461149e565b610372565b6101e46101df3660046115c4565b6103a6565b005b6101e46101f4366004611697565b6103b2565b61020c610207366004611741565b610556565b60405161017d919061183c565b6101b16106f6565b6101e461022f36600461184f565b610703565b6101e4610242366004611898565b61070c565b6101996102553660046118d4565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101e461029e366004611907565b6107a3565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006102d382610940565b600380546102f19061196c565b80601f016020809104026020016040519081016040528092919081815260200182805461031d9061196c565b801561036a5780601f1061033f5761010080835404028352916020019161036a565b820191906000526020600020905b81548152906001019060200180831161034d57829003601f168201915b505050505081565b6060600261037f8361099c565b6040516020016103909291906119bf565b6040516020818303038152906040529050919050565b6103af81610afc565b50565b3373ffffffffffffffffffffffffffffffffffffffff86161480610406575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610492576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610535576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610157565b61054185858585610c47565b61054f858585855a86610eac565b5050505050565b606081518351146105e9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610157565b6000835167ffffffffffffffff811115610605576106056114b7565b60405190808252806020026020018201604052801561062e578160200160208202803683370190505b50905060005b84518110156106ee5760008086838151811061065257610652611a8c565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106a8576106a8611a8c565b60200260200101518152602001908152602001600020548282815181106106d1576106d1611a8c565b6020908102919091010152806106e681611aea565b915050610634565b509392505050565b600280546102f19061196c565b6103af81611035565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff861614806107f7575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610883576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610157565b73ffffffffffffffffffffffffffffffffffffffff8416610926576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610157565b61093285858585611045565b61054f858585855a86611129565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161099357506001919050565b6102d3826112a8565b6060816000036109df57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a0957806109f381611aea565b9150610a029050600a83611b22565b91506109e3565b60008167ffffffffffffffff811115610a2457610a246114b7565b6040519080825280601f01601f191660200182016040528015610a4e576020820181803683370190505b509050815b8515610af357610a64600182611b5d565b90506000610a73600a88611b22565b610a7e90600a611b70565b610a889088611b5d565b610a93906030611b87565b905060008160f81b905080848481518110610ab057610ab0611a8c565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610aea600a89611b22565b97505050610a53565b50949350505050565b600060028054610b0b9061196c565b80601f0160208091040260200160405190810160405280929190818152602001828054610b379061196c565b8015610b845780601f10610b5957610100808354040283529160200191610b84565b820191906000526020600020905b815481529060010190602001808311610b6757829003601f168201915b50505050509050606060005b8351811015610c415782610bbc858381518110610baf57610baf611a8c565b602002602001015161099c565b604051602001610bcd929190611ba0565b6040516020818303038152906040529150838181518110610bf057610bf0611a8c565b60200260200101517f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b83604051610c27919061148b565b60405180910390a280610c3981611aea565b915050610b90565b50505050565b8051825114610cd8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610157565b815160005b81811015610e2657828181518110610cf757610cf7611a8c565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d5157610d51611a8c565b602002602001015181526020019081526020016000206000828254610d769190611b5d565b92505081905550828181518110610d8f57610d8f611a8c565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610de957610de9611a8c565b602002602001015181526020019081526020016000206000828254610e0e9190611bc6565b90915550819050610e1e81611aea565b915050610cdd565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e9d929190611bd9565b60405180910390a45050505050565b610ecb8573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f14959493929190611c07565b60206040518083038160008887f1158015610f33573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f589190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610157565b505b505050505050565b60026110418282611cda565b5050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611083908490611b5d565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110c6908490611bc6565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6111488573ffffffffffffffffffffffffffffffffffffffff16611345565b1561102d5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401611191959493929190611df4565b60206040518083038160008887f11580156111b0573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111d59190611c72565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461102b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610157565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016112fb57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102d3565b6000813f801580159061137857507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146113a357600080fd5b919050565b600080604083850312156113bb57600080fd5b6113c48361137f565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146103af57600080fd5b60006020828403121561141257600080fd5b8135611378816113d2565b60005b83811015611438578181015183820152602001611420565b50506000910152565b6000815180845261145981602086016020860161141d565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006113786020830184611441565b6000602082840312156114b057600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff8111828210171561152d5761152d6114b7565b604052919050565b600067ffffffffffffffff82111561154f5761154f6114b7565b5060051b60200190565b600082601f83011261156a57600080fd5b8135602061157f61157a83611535565b6114e6565b82815260059290921b8401810191818101908684111561159e57600080fd5b8286015b848110156115b957803583529183019183016115a2565b509695505050505050565b6000602082840312156115d657600080fd5b813567ffffffffffffffff8111156115ed57600080fd5b6115f984828501611559565b949350505050565b600067ffffffffffffffff83111561161b5761161b6114b7565b61164c60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f860116016114e6565b905082815283838301111561166057600080fd5b828260208301376000602084830101529392505050565b600082601f83011261168857600080fd5b61137883833560208501611601565b600080600080600060a086880312156116af57600080fd5b6116b88661137f565b94506116c66020870161137f565b9350604086013567ffffffffffffffff808211156116e357600080fd5b6116ef89838a01611559565b9450606088013591508082111561170557600080fd5b61171189838a01611559565b9350608088013591508082111561172757600080fd5b5061173488828901611677565b9150509295509295909350565b6000806040838503121561175457600080fd5b823567ffffffffffffffff8082111561176c57600080fd5b818501915085601f83011261178057600080fd5b8135602061179061157a83611535565b82815260059290921b840181019181810190898411156117af57600080fd5b948201945b838610156117d4576117c58661137f565b825294820194908201906117b4565b965050860135925050808211156117ea57600080fd5b506117f785828601611559565b9150509250929050565b600081518084526020808501945080840160005b8381101561183157815187529582019590820190600101611815565b509495945050505050565b6020815260006113786020830184611801565b60006020828403121561186157600080fd5b813567ffffffffffffffff81111561187857600080fd5b8201601f8101841361188957600080fd5b6115f984823560208401611601565b600080604083850312156118ab57600080fd5b6118b48361137f565b9150602083013580151581146118c957600080fd5b809150509250929050565b600080604083850312156118e757600080fd5b6118f08361137f565b91506118fe6020840161137f565b90509250929050565b600080600080600060a0868803121561191f57600080fd5b6119288661137f565b94506119366020870161137f565b93506040860135925060608601359150608086013567ffffffffffffffff81111561196057600080fd5b61173488828901611677565b600181811c9082168061198057607f821691505b6020821081036119b9577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008084546119cd8161196c565b600182811680156119e55760018114611a1857611a47565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0084168752821515830287019450611a47565b8860005260208060002060005b85811015611a3e5781548a820152908401908201611a25565b50505082870194505b505050508351611a5b81836020880161141d565b7f2e6a736f6e0000000000000000000000000000000000000000000000000000009101908152600501949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b1b57611b1b611abb565b5060010190565b600082611b58577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156102d3576102d3611abb565b80820281158282048414176102d3576102d3611abb565b60ff81811683821601908111156102d3576102d3611abb565b60008351611bb281846020880161141d565b835190830190611a5b81836020880161141d565b808201808211156102d3576102d3611abb565b604081526000611bec6040830185611801565b8281036020840152611bfe8185611801565b95945050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4060a0830186611801565b8281036060840152611c528186611801565b90508281036080840152611c668185611441565b98975050505050505050565b600060208284031215611c8457600080fd5b8151611378816113d2565b601f821115611cd557600081815260208120601f850160051c81016020861015611cb65750805b601f850160051c820191505b8181101561102d57828155600101611cc2565b505050565b815167ffffffffffffffff811115611cf457611cf46114b7565b611d0881611d02845461196c565b84611c8f565b602080601f831160018114611d5b5760008415611d255750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855561102d565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b82811015611da857888601518255948401946001909101908401611d89565b5085821015611de457878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611e3960a0830184611441565b97965050505050505056fea2646970667358221220f455c6a46a06091718800aa11c3e419215e2d12b477fef504799d91abe3e489264736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC1155MintBurnMock.sol/ERC1155MintBurnMock.json b/src/artifacts/contracts/mocks/ERC1155MintBurnMock.sol/ERC1155MintBurnMock.json index 7a25030..2b36126 100644 --- a/src/artifacts/contracts/mocks/ERC1155MintBurnMock.sol/ERC1155MintBurnMock.json +++ b/src/artifacts/contracts/mocks/ERC1155MintBurnMock.sol/ERC1155MintBurnMock.json @@ -464,8 +464,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b50604051620025a3380380620025a3833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61223080620003736000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c80636c0360eb1161008c578063bd7a6c4111610066578063bd7a6c411461025d578063d7a0ad9014610270578063e985e9c514610283578063f242432a146102cc576100e9565b80636c0360eb1461022f578063a22cb46514610237578063a3f091f51461024a576100e9565b80630e89341c116100c85780630e89341c146101d45780632eb2c2d6146101e7578063437ecbe9146101fc5780634e1273f41461020f576100e9565b8062fdd58e1461017657806301ffc9a71461019c57806306fdde03146101bf575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61018961018436600461178c565b6102df565b6040519081526020015b60405180910390f35b6101af6101aa3660046117e7565b610315565b6040519015158152602001610193565b6101c7610320565b6040516101939190611872565b6101c76101e2366004611885565b6103ae565b6101fa6101f5366004611a39565b6103e2565b005b6101fa61020a366004611ae3565b610586565b61022261021d366004611b16565b610596565b6040516101939190611c11565b6101c7610736565b6101fa610245366004611c24565b610743565b6101fa610258366004611c60565b6107da565b6101fa61026b366004611cc1565b6107ec565b6101fa61027e366004611d35565b6107f7565b6101af610291366004611dc2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101fa6102da366004611df5565b610803565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061030f826109a0565b6003805461032d90611e5a565b80601f016020809104026020016040519081016040528092919081815260200182805461035990611e5a565b80156103a65780601f1061037b576101008083540402835291602001916103a6565b820191906000526020600020905b81548152906001019060200180831161038957829003601f168201915b505050505081565b606060026103bb836109fc565b6040516020016103cc929190611ec9565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610436575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6104c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161016d565b61057185858585610b5c565b61057f858585855a86610dc1565b5050505050565b610591838383610f4a565b505050565b60608151835114610629576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161016d565b6000835167ffffffffffffffff8111156106455761064561189e565b60405190808252806020026020018201604052801561066e578160200160208202803683370190505b50905060005b845181101561072e5760008086838151811061069257610692611fd6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106e8576106e8611fd6565b602002602001015181526020019081526020016000205482828151811061071157610711611fd6565b60209081029190910101528061072681612034565b915050610674565b509392505050565b6002805461032d90611e5a565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6107e684848484610fe8565b50505050565b610591838383611090565b6107e68484848461125c565b3373ffffffffffffffffffffffffffffffffffffffff86161480610857575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6108e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161016d565b61099285858585611432565b61057f858585855a8661150d565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016109f357506001919050565b61030f8261168c565b606081600003610a3f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a695780610a5381612034565b9150610a629050600a8361206c565b9150610a43565b60008167ffffffffffffffff811115610a8457610a8461189e565b6040519080825280601f01601f191660200182016040528015610aae576020820181803683370190505b509050815b8515610b5357610ac46001826120a7565b90506000610ad3600a8861206c565b610ade90600a6120ba565b610ae890886120a7565b610af39060306120d1565b905060008160f81b905080848481518110610b1057610b10611fd6565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610b4a600a8961206c565b97505050610ab3565b50949350505050565b8051825114610bed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161016d565b815160005b81811015610d3b57828181518110610c0c57610c0c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610c6657610c66611fd6565b602002602001015181526020019081526020016000206000828254610c8b91906120a7565b92505081905550828181518110610ca457610ca4611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610cfe57610cfe611fd6565b602002602001015181526020019081526020016000206000828254610d2391906120ea565b90915550819050610d3381612034565b915050610bf2565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610db29291906120fd565b60405180910390a45050505050565b610de08573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610e29959493929190612122565b60206040518083038160008887f1158015610e48573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e6d919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161016d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610f889084906120a7565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906110269084906120ea565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46107e660008585855a8661150d565b815181518114611122576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b60005b818110156111d65782818151811061113f5761113f611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061119957611199611fd6565b6020026020010151815260200190815260200160002060008282546111be91906120a7565b909155508190506111ce81612034565b915050611125565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161124e9291906120fd565b60405180910390a450505050565b81518351146112ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b825160005b818110156113a35783818151811061130c5761130c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087848151811061136657611366611fd6565b60200260200101518152602001908152602001600020600082825461138b91906120ea565b9091555081905061139b81612034565b9150506112f2565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb878760405161141b9291906120fd565b60405180910390a461057f60008686865a87610dc1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906114709084906120a7565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906114b39084906120ea565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910161124e565b61152c8573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016115759594939291906121aa565b60206040518083038160008887f1158015611594573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906115b9919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161016d565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016116df57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461030f565b6000813f801580159061175c57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461178757600080fd5b919050565b6000806040838503121561179f57600080fd5b6117a883611763565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146117e457600080fd5b50565b6000602082840312156117f957600080fd5b813561175c816117b6565b60005b8381101561181f578181015183820152602001611807565b50506000910152565b60008151808452611840816020860160208601611804565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061175c6020830184611828565b60006020828403121561189757600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156119145761191461189e565b604052919050565b600067ffffffffffffffff8211156119365761193661189e565b5060051b60200190565b600082601f83011261195157600080fd5b813560206119666119618361191c565b6118cd565b82815260059290921b8401810191818101908684111561198557600080fd5b8286015b848110156119a05780358352918301918301611989565b509695505050505050565b600082601f8301126119bc57600080fd5b813567ffffffffffffffff8111156119d6576119d661189e565b611a0760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116016118cd565b818152846020838601011115611a1c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611a5157600080fd5b611a5a86611763565b9450611a6860208701611763565b9350604086013567ffffffffffffffff80821115611a8557600080fd5b611a9189838a01611940565b94506060880135915080821115611aa757600080fd5b611ab389838a01611940565b93506080880135915080821115611ac957600080fd5b50611ad6888289016119ab565b9150509295509295909350565b600080600060608486031215611af857600080fd5b611b0184611763565b95602085013595506040909401359392505050565b60008060408385031215611b2957600080fd5b823567ffffffffffffffff80821115611b4157600080fd5b818501915085601f830112611b5557600080fd5b81356020611b656119618361191c565b82815260059290921b84018101918181019089841115611b8457600080fd5b948201945b83861015611ba957611b9a86611763565b82529482019490820190611b89565b96505086013592505080821115611bbf57600080fd5b50611bcc85828601611940565b9150509250929050565b600081518084526020808501945080840160005b83811015611c0657815187529582019590820190600101611bea565b509495945050505050565b60208152600061175c6020830184611bd6565b60008060408385031215611c3757600080fd5b611c4083611763565b915060208301358015158114611c5557600080fd5b809150509250929050565b60008060008060808587031215611c7657600080fd5b611c7f85611763565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ca957600080fd5b611cb5878288016119ab565b91505092959194509250565b600080600060608486031215611cd657600080fd5b611cdf84611763565b9250602084013567ffffffffffffffff80821115611cfc57600080fd5b611d0887838801611940565b93506040860135915080821115611d1e57600080fd5b50611d2b86828701611940565b9150509250925092565b60008060008060808587031215611d4b57600080fd5b611d5485611763565b9350602085013567ffffffffffffffff80821115611d7157600080fd5b611d7d88838901611940565b94506040870135915080821115611d9357600080fd5b611d9f88838901611940565b93506060870135915080821115611db557600080fd5b50611cb5878288016119ab565b60008060408385031215611dd557600080fd5b611dde83611763565b9150611dec60208401611763565b90509250929050565b600080600080600060a08688031215611e0d57600080fd5b611e1686611763565b9450611e2460208701611763565b93506040860135925060608601359150608086013567ffffffffffffffff811115611e4e57600080fd5b611ad6888289016119ab565b600181811c90821680611e6e57607f821691505b602082108103611ea7577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151611ebf818560208601611804565b9290920192915050565b600080845481600182811c915080831680611ee557607f831692505b60208084108203611f1d577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015611f315760018114611f6457611f91565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650611f91565b60008b81526020902060005b86811015611f895781548b820152908501908301611f70565b505084890196505b505050505050611fcd611fa48286611ead565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361206557612065612005565b5060010190565b6000826120a2577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b8181038181111561030f5761030f612005565b808202811582820484141761030f5761030f612005565b60ff818116838216019081111561030f5761030f612005565b8082018082111561030f5761030f612005565b6040815260006121106040830185611bd6565b8281036020840152611fcd8185611bd6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261215b60a0830186611bd6565b828103606084015261216d8186611bd6565b905082810360808401526121818185611828565b98975050505050505050565b60006020828403121561219f57600080fd5b815161175c816117b6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526121ef60a0830184611828565b97965050505050505056fea2646970667358221220f5b18ed35bfc54916a1e225ca9b46bfa95edcf695796f42ead8cb0d4be4e1f1664736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100e95760003560e01c80636c0360eb1161008c578063bd7a6c4111610066578063bd7a6c411461025d578063d7a0ad9014610270578063e985e9c514610283578063f242432a146102cc576100e9565b80636c0360eb1461022f578063a22cb46514610237578063a3f091f51461024a576100e9565b80630e89341c116100c85780630e89341c146101d45780632eb2c2d6146101e7578063437ecbe9146101fc5780634e1273f41461020f576100e9565b8062fdd58e1461017657806301ffc9a71461019c57806306fdde03146101bf575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61018961018436600461178c565b6102df565b6040519081526020015b60405180910390f35b6101af6101aa3660046117e7565b610315565b6040519015158152602001610193565b6101c7610320565b6040516101939190611872565b6101c76101e2366004611885565b6103ae565b6101fa6101f5366004611a39565b6103e2565b005b6101fa61020a366004611ae3565b610586565b61022261021d366004611b16565b610596565b6040516101939190611c11565b6101c7610736565b6101fa610245366004611c24565b610743565b6101fa610258366004611c60565b6107da565b6101fa61026b366004611cc1565b6107ec565b6101fa61027e366004611d35565b6107f7565b6101af610291366004611dc2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101fa6102da366004611df5565b610803565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061030f826109a0565b6003805461032d90611e5a565b80601f016020809104026020016040519081016040528092919081815260200182805461035990611e5a565b80156103a65780601f1061037b576101008083540402835291602001916103a6565b820191906000526020600020905b81548152906001019060200180831161038957829003601f168201915b505050505081565b606060026103bb836109fc565b6040516020016103cc929190611ec9565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610436575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6104c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161016d565b61057185858585610b5c565b61057f858585855a86610dc1565b5050505050565b610591838383610f4a565b505050565b60608151835114610629576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161016d565b6000835167ffffffffffffffff8111156106455761064561189e565b60405190808252806020026020018201604052801561066e578160200160208202803683370190505b50905060005b845181101561072e5760008086838151811061069257610692611fd6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106e8576106e8611fd6565b602002602001015181526020019081526020016000205482828151811061071157610711611fd6565b60209081029190910101528061072681612034565b915050610674565b509392505050565b6002805461032d90611e5a565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6107e684848484610fe8565b50505050565b610591838383611090565b6107e68484848461125c565b3373ffffffffffffffffffffffffffffffffffffffff86161480610857575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6108e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161016d565b61099285858585611432565b61057f858585855a8661150d565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016109f357506001919050565b61030f8261168c565b606081600003610a3f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a695780610a5381612034565b9150610a629050600a8361206c565b9150610a43565b60008167ffffffffffffffff811115610a8457610a8461189e565b6040519080825280601f01601f191660200182016040528015610aae576020820181803683370190505b509050815b8515610b5357610ac46001826120a7565b90506000610ad3600a8861206c565b610ade90600a6120ba565b610ae890886120a7565b610af39060306120d1565b905060008160f81b905080848481518110610b1057610b10611fd6565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610b4a600a8961206c565b97505050610ab3565b50949350505050565b8051825114610bed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161016d565b815160005b81811015610d3b57828181518110610c0c57610c0c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610c6657610c66611fd6565b602002602001015181526020019081526020016000206000828254610c8b91906120a7565b92505081905550828181518110610ca457610ca4611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610cfe57610cfe611fd6565b602002602001015181526020019081526020016000206000828254610d2391906120ea565b90915550819050610d3381612034565b915050610bf2565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610db29291906120fd565b60405180910390a45050505050565b610de08573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610e29959493929190612122565b60206040518083038160008887f1158015610e48573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e6d919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161016d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610f889084906120a7565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906110269084906120ea565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46107e660008585855a8661150d565b815181518114611122576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b60005b818110156111d65782818151811061113f5761113f611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061119957611199611fd6565b6020026020010151815260200190815260200160002060008282546111be91906120a7565b909155508190506111ce81612034565b915050611125565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161124e9291906120fd565b60405180910390a450505050565b81518351146112ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b825160005b818110156113a35783818151811061130c5761130c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087848151811061136657611366611fd6565b60200260200101518152602001908152602001600020600082825461138b91906120ea565b9091555081905061139b81612034565b9150506112f2565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb878760405161141b9291906120fd565b60405180910390a461057f60008686865a87610dc1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906114709084906120a7565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906114b39084906120ea565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910161124e565b61152c8573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016115759594939291906121aa565b60206040518083038160008887f1158015611594573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906115b9919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161016d565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016116df57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461030f565b6000813f801580159061175c57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461178757600080fd5b919050565b6000806040838503121561179f57600080fd5b6117a883611763565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146117e457600080fd5b50565b6000602082840312156117f957600080fd5b813561175c816117b6565b60005b8381101561181f578181015183820152602001611807565b50506000910152565b60008151808452611840816020860160208601611804565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061175c6020830184611828565b60006020828403121561189757600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156119145761191461189e565b604052919050565b600067ffffffffffffffff8211156119365761193661189e565b5060051b60200190565b600082601f83011261195157600080fd5b813560206119666119618361191c565b6118cd565b82815260059290921b8401810191818101908684111561198557600080fd5b8286015b848110156119a05780358352918301918301611989565b509695505050505050565b600082601f8301126119bc57600080fd5b813567ffffffffffffffff8111156119d6576119d661189e565b611a0760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116016118cd565b818152846020838601011115611a1c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611a5157600080fd5b611a5a86611763565b9450611a6860208701611763565b9350604086013567ffffffffffffffff80821115611a8557600080fd5b611a9189838a01611940565b94506060880135915080821115611aa757600080fd5b611ab389838a01611940565b93506080880135915080821115611ac957600080fd5b50611ad6888289016119ab565b9150509295509295909350565b600080600060608486031215611af857600080fd5b611b0184611763565b95602085013595506040909401359392505050565b60008060408385031215611b2957600080fd5b823567ffffffffffffffff80821115611b4157600080fd5b818501915085601f830112611b5557600080fd5b81356020611b656119618361191c565b82815260059290921b84018101918181019089841115611b8457600080fd5b948201945b83861015611ba957611b9a86611763565b82529482019490820190611b89565b96505086013592505080821115611bbf57600080fd5b50611bcc85828601611940565b9150509250929050565b600081518084526020808501945080840160005b83811015611c0657815187529582019590820190600101611bea565b509495945050505050565b60208152600061175c6020830184611bd6565b60008060408385031215611c3757600080fd5b611c4083611763565b915060208301358015158114611c5557600080fd5b809150509250929050565b60008060008060808587031215611c7657600080fd5b611c7f85611763565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ca957600080fd5b611cb5878288016119ab565b91505092959194509250565b600080600060608486031215611cd657600080fd5b611cdf84611763565b9250602084013567ffffffffffffffff80821115611cfc57600080fd5b611d0887838801611940565b93506040860135915080821115611d1e57600080fd5b50611d2b86828701611940565b9150509250925092565b60008060008060808587031215611d4b57600080fd5b611d5485611763565b9350602085013567ffffffffffffffff80821115611d7157600080fd5b611d7d88838901611940565b94506040870135915080821115611d9357600080fd5b611d9f88838901611940565b93506060870135915080821115611db557600080fd5b50611cb5878288016119ab565b60008060408385031215611dd557600080fd5b611dde83611763565b9150611dec60208401611763565b90509250929050565b600080600080600060a08688031215611e0d57600080fd5b611e1686611763565b9450611e2460208701611763565b93506040860135925060608601359150608086013567ffffffffffffffff811115611e4e57600080fd5b611ad6888289016119ab565b600181811c90821680611e6e57607f821691505b602082108103611ea7577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151611ebf818560208601611804565b9290920192915050565b600080845481600182811c915080831680611ee557607f831692505b60208084108203611f1d577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015611f315760018114611f6457611f91565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650611f91565b60008b81526020902060005b86811015611f895781548b820152908501908301611f70565b505084890196505b505050505050611fcd611fa48286611ead565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361206557612065612005565b5060010190565b6000826120a2577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b8181038181111561030f5761030f612005565b808202811582820484141761030f5761030f612005565b60ff818116838216019081111561030f5761030f612005565b8082018082111561030f5761030f612005565b6040815260006121106040830185611bd6565b8281036020840152611fcd8185611bd6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261215b60a0830186611bd6565b828103606084015261216d8186611bd6565b905082810360808401526121818185611828565b98975050505050505050565b60006020828403121561219f57600080fd5b815161175c816117b6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526121ef60a0830184611828565b97965050505050505056fea2646970667358221220f5b18ed35bfc54916a1e225ca9b46bfa95edcf695796f42ead8cb0d4be4e1f1664736f6c63430008120033", + "bytecode": "0x60806040523480156200001157600080fd5b50604051620025a3380380620025a3833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61223080620003736000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c80636c0360eb1161008c578063bd7a6c4111610066578063bd7a6c411461025d578063d7a0ad9014610270578063e985e9c514610283578063f242432a146102cc576100e9565b80636c0360eb1461022f578063a22cb46514610237578063a3f091f51461024a576100e9565b80630e89341c116100c85780630e89341c146101d45780632eb2c2d6146101e7578063437ecbe9146101fc5780634e1273f41461020f576100e9565b8062fdd58e1461017657806301ffc9a71461019c57806306fdde03146101bf575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61018961018436600461178c565b6102df565b6040519081526020015b60405180910390f35b6101af6101aa3660046117e7565b610315565b6040519015158152602001610193565b6101c7610320565b6040516101939190611872565b6101c76101e2366004611885565b6103ae565b6101fa6101f5366004611a39565b6103e2565b005b6101fa61020a366004611ae3565b610586565b61022261021d366004611b16565b610596565b6040516101939190611c11565b6101c7610736565b6101fa610245366004611c24565b610743565b6101fa610258366004611c60565b6107da565b6101fa61026b366004611cc1565b6107ec565b6101fa61027e366004611d35565b6107f7565b6101af610291366004611dc2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101fa6102da366004611df5565b610803565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061030f826109a0565b6003805461032d90611e5a565b80601f016020809104026020016040519081016040528092919081815260200182805461035990611e5a565b80156103a65780601f1061037b576101008083540402835291602001916103a6565b820191906000526020600020905b81548152906001019060200180831161038957829003601f168201915b505050505081565b606060026103bb836109fc565b6040516020016103cc929190611ec9565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610436575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6104c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161016d565b61057185858585610b5c565b61057f858585855a86610dc1565b5050505050565b610591838383610f4a565b505050565b60608151835114610629576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161016d565b6000835167ffffffffffffffff8111156106455761064561189e565b60405190808252806020026020018201604052801561066e578160200160208202803683370190505b50905060005b845181101561072e5760008086838151811061069257610692611fd6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106e8576106e8611fd6565b602002602001015181526020019081526020016000205482828151811061071157610711611fd6565b60209081029190910101528061072681612034565b915050610674565b509392505050565b6002805461032d90611e5a565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6107e684848484610fe8565b50505050565b610591838383611090565b6107e68484848461125c565b3373ffffffffffffffffffffffffffffffffffffffff86161480610857575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6108e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161016d565b61099285858585611432565b61057f858585855a8661150d565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016109f357506001919050565b61030f8261168c565b606081600003610a3f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a695780610a5381612034565b9150610a629050600a8361206c565b9150610a43565b60008167ffffffffffffffff811115610a8457610a8461189e565b6040519080825280601f01601f191660200182016040528015610aae576020820181803683370190505b509050815b8515610b5357610ac46001826120a7565b90506000610ad3600a8861206c565b610ade90600a6120ba565b610ae890886120a7565b610af39060306120d1565b905060008160f81b905080848481518110610b1057610b10611fd6565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610b4a600a8961206c565b97505050610ab3565b50949350505050565b8051825114610bed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161016d565b815160005b81811015610d3b57828181518110610c0c57610c0c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610c6657610c66611fd6565b602002602001015181526020019081526020016000206000828254610c8b91906120a7565b92505081905550828181518110610ca457610ca4611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610cfe57610cfe611fd6565b602002602001015181526020019081526020016000206000828254610d2391906120ea565b90915550819050610d3381612034565b915050610bf2565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610db29291906120fd565b60405180910390a45050505050565b610de08573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610e29959493929190612122565b60206040518083038160008887f1158015610e48573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e6d919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161016d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610f889084906120a7565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906110269084906120ea565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46107e660008585855a8661150d565b815181518114611122576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b60005b818110156111d65782818151811061113f5761113f611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061119957611199611fd6565b6020026020010151815260200190815260200160002060008282546111be91906120a7565b909155508190506111ce81612034565b915050611125565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161124e9291906120fd565b60405180910390a450505050565b81518351146112ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b825160005b818110156113a35783818151811061130c5761130c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087848151811061136657611366611fd6565b60200260200101518152602001908152602001600020600082825461138b91906120ea565b9091555081905061139b81612034565b9150506112f2565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb878760405161141b9291906120fd565b60405180910390a461057f60008686865a87610dc1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906114709084906120a7565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906114b39084906120ea565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910161124e565b61152c8573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016115759594939291906121aa565b60206040518083038160008887f1158015611594573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906115b9919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161016d565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016116df57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461030f565b6000813f801580159061175c57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461178757600080fd5b919050565b6000806040838503121561179f57600080fd5b6117a883611763565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146117e457600080fd5b50565b6000602082840312156117f957600080fd5b813561175c816117b6565b60005b8381101561181f578181015183820152602001611807565b50506000910152565b60008151808452611840816020860160208601611804565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061175c6020830184611828565b60006020828403121561189757600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156119145761191461189e565b604052919050565b600067ffffffffffffffff8211156119365761193661189e565b5060051b60200190565b600082601f83011261195157600080fd5b813560206119666119618361191c565b6118cd565b82815260059290921b8401810191818101908684111561198557600080fd5b8286015b848110156119a05780358352918301918301611989565b509695505050505050565b600082601f8301126119bc57600080fd5b813567ffffffffffffffff8111156119d6576119d661189e565b611a0760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116016118cd565b818152846020838601011115611a1c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611a5157600080fd5b611a5a86611763565b9450611a6860208701611763565b9350604086013567ffffffffffffffff80821115611a8557600080fd5b611a9189838a01611940565b94506060880135915080821115611aa757600080fd5b611ab389838a01611940565b93506080880135915080821115611ac957600080fd5b50611ad6888289016119ab565b9150509295509295909350565b600080600060608486031215611af857600080fd5b611b0184611763565b95602085013595506040909401359392505050565b60008060408385031215611b2957600080fd5b823567ffffffffffffffff80821115611b4157600080fd5b818501915085601f830112611b5557600080fd5b81356020611b656119618361191c565b82815260059290921b84018101918181019089841115611b8457600080fd5b948201945b83861015611ba957611b9a86611763565b82529482019490820190611b89565b96505086013592505080821115611bbf57600080fd5b50611bcc85828601611940565b9150509250929050565b600081518084526020808501945080840160005b83811015611c0657815187529582019590820190600101611bea565b509495945050505050565b60208152600061175c6020830184611bd6565b60008060408385031215611c3757600080fd5b611c4083611763565b915060208301358015158114611c5557600080fd5b809150509250929050565b60008060008060808587031215611c7657600080fd5b611c7f85611763565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ca957600080fd5b611cb5878288016119ab565b91505092959194509250565b600080600060608486031215611cd657600080fd5b611cdf84611763565b9250602084013567ffffffffffffffff80821115611cfc57600080fd5b611d0887838801611940565b93506040860135915080821115611d1e57600080fd5b50611d2b86828701611940565b9150509250925092565b60008060008060808587031215611d4b57600080fd5b611d5485611763565b9350602085013567ffffffffffffffff80821115611d7157600080fd5b611d7d88838901611940565b94506040870135915080821115611d9357600080fd5b611d9f88838901611940565b93506060870135915080821115611db557600080fd5b50611cb5878288016119ab565b60008060408385031215611dd557600080fd5b611dde83611763565b9150611dec60208401611763565b90509250929050565b600080600080600060a08688031215611e0d57600080fd5b611e1686611763565b9450611e2460208701611763565b93506040860135925060608601359150608086013567ffffffffffffffff811115611e4e57600080fd5b611ad6888289016119ab565b600181811c90821680611e6e57607f821691505b602082108103611ea7577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151611ebf818560208601611804565b9290920192915050565b600080845481600182811c915080831680611ee557607f831692505b60208084108203611f1d577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015611f315760018114611f6457611f91565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650611f91565b60008b81526020902060005b86811015611f895781548b820152908501908301611f70565b505084890196505b505050505050611fcd611fa48286611ead565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361206557612065612005565b5060010190565b6000826120a2577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b8181038181111561030f5761030f612005565b808202811582820484141761030f5761030f612005565b60ff818116838216019081111561030f5761030f612005565b8082018082111561030f5761030f612005565b6040815260006121106040830185611bd6565b8281036020840152611fcd8185611bd6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261215b60a0830186611bd6565b828103606084015261216d8186611bd6565b905082810360808401526121818185611828565b98975050505050505050565b60006020828403121561219f57600080fd5b815161175c816117b6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526121ef60a0830184611828565b97965050505050505056fea264697066735822122021876f9937e5ba8a158335f30cd393ae80ee3b8f65906e170ca236e1700c308564736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100e95760003560e01c80636c0360eb1161008c578063bd7a6c4111610066578063bd7a6c411461025d578063d7a0ad9014610270578063e985e9c514610283578063f242432a146102cc576100e9565b80636c0360eb1461022f578063a22cb46514610237578063a3f091f51461024a576100e9565b80630e89341c116100c85780630e89341c146101d45780632eb2c2d6146101e7578063437ecbe9146101fc5780634e1273f41461020f576100e9565b8062fdd58e1461017657806301ffc9a71461019c57806306fdde03146101bf575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61018961018436600461178c565b6102df565b6040519081526020015b60405180910390f35b6101af6101aa3660046117e7565b610315565b6040519015158152602001610193565b6101c7610320565b6040516101939190611872565b6101c76101e2366004611885565b6103ae565b6101fa6101f5366004611a39565b6103e2565b005b6101fa61020a366004611ae3565b610586565b61022261021d366004611b16565b610596565b6040516101939190611c11565b6101c7610736565b6101fa610245366004611c24565b610743565b6101fa610258366004611c60565b6107da565b6101fa61026b366004611cc1565b6107ec565b6101fa61027e366004611d35565b6107f7565b6101af610291366004611dc2565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6101fa6102da366004611df5565b610803565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061030f826109a0565b6003805461032d90611e5a565b80601f016020809104026020016040519081016040528092919081815260200182805461035990611e5a565b80156103a65780601f1061037b576101008083540402835291602001916103a6565b820191906000526020600020905b81548152906001019060200180831161038957829003601f168201915b505050505081565b606060026103bb836109fc565b6040516020016103cc929190611ec9565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610436575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6104c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161016d565b61057185858585610b5c565b61057f858585855a86610dc1565b5050505050565b610591838383610f4a565b505050565b60608151835114610629576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161016d565b6000835167ffffffffffffffff8111156106455761064561189e565b60405190808252806020026020018201604052801561066e578160200160208202803683370190505b50905060005b845181101561072e5760008086838151811061069257610692611fd6565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106106e8576106e8611fd6565b602002602001015181526020019081526020016000205482828151811061071157610711611fd6565b60209081029190910101528061072681612034565b915050610674565b509392505050565b6002805461032d90611e5a565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6107e684848484610fe8565b50505050565b610591838383611090565b6107e68484848461125c565b3373ffffffffffffffffffffffffffffffffffffffff86161480610857575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6108e3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161016d565b73ffffffffffffffffffffffffffffffffffffffff8416610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161016d565b61099285858585611432565b61057f858585855a8661150d565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016109f357506001919050565b61030f8261168c565b606081600003610a3f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610a695780610a5381612034565b9150610a629050600a8361206c565b9150610a43565b60008167ffffffffffffffff811115610a8457610a8461189e565b6040519080825280601f01601f191660200182016040528015610aae576020820181803683370190505b509050815b8515610b5357610ac46001826120a7565b90506000610ad3600a8861206c565b610ade90600a6120ba565b610ae890886120a7565b610af39060306120d1565b905060008160f81b905080848481518110610b1057610b10611fd6565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610b4a600a8961206c565b97505050610ab3565b50949350505050565b8051825114610bed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161016d565b815160005b81811015610d3b57828181518110610c0c57610c0c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610c6657610c66611fd6565b602002602001015181526020019081526020016000206000828254610c8b91906120a7565b92505081905550828181518110610ca457610ca4611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610cfe57610cfe611fd6565b602002602001015181526020019081526020016000206000828254610d2391906120ea565b90915550819050610d3381612034565b915050610bf2565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610db29291906120fd565b60405180910390a45050505050565b610de08573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610e29959493929190612122565b60206040518083038160008887f1158015610e48573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610e6d919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161016d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610f889084906120a7565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906110269084906120ea565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46107e660008585855a8661150d565b815181518114611122576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b60005b818110156111d65782818151811061113f5761113f611fd6565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061119957611199611fd6565b6020026020010151815260200190815260200160002060008282546111be91906120a7565b909155508190506111ce81612034565b915050611125565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161124e9291906120fd565b60405180910390a450505050565b81518351146112ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161016d565b825160005b818110156113a35783818151811061130c5761130c611fd6565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087848151811061136657611366611fd6565b60200260200101518152602001908152602001600020600082825461138b91906120ea565b9091555081905061139b81612034565b9150506112f2565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb878760405161141b9291906120fd565b60405180910390a461057f60008686865a87610dc1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906114709084906120a7565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906114b39084906120ea565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910161124e565b61152c8573ffffffffffffffffffffffffffffffffffffffff16611729565b15610f425760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016115759594939291906121aa565b60206040518083038160008887f1158015611594573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906115b9919061218d565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610f40576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161016d565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016116df57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461030f565b6000813f801580159061175c57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461178757600080fd5b919050565b6000806040838503121561179f57600080fd5b6117a883611763565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146117e457600080fd5b50565b6000602082840312156117f957600080fd5b813561175c816117b6565b60005b8381101561181f578181015183820152602001611807565b50506000910152565b60008151808452611840816020860160208601611804565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061175c6020830184611828565b60006020828403121561189757600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156119145761191461189e565b604052919050565b600067ffffffffffffffff8211156119365761193661189e565b5060051b60200190565b600082601f83011261195157600080fd5b813560206119666119618361191c565b6118cd565b82815260059290921b8401810191818101908684111561198557600080fd5b8286015b848110156119a05780358352918301918301611989565b509695505050505050565b600082601f8301126119bc57600080fd5b813567ffffffffffffffff8111156119d6576119d661189e565b611a0760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116016118cd565b818152846020838601011115611a1c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611a5157600080fd5b611a5a86611763565b9450611a6860208701611763565b9350604086013567ffffffffffffffff80821115611a8557600080fd5b611a9189838a01611940565b94506060880135915080821115611aa757600080fd5b611ab389838a01611940565b93506080880135915080821115611ac957600080fd5b50611ad6888289016119ab565b9150509295509295909350565b600080600060608486031215611af857600080fd5b611b0184611763565b95602085013595506040909401359392505050565b60008060408385031215611b2957600080fd5b823567ffffffffffffffff80821115611b4157600080fd5b818501915085601f830112611b5557600080fd5b81356020611b656119618361191c565b82815260059290921b84018101918181019089841115611b8457600080fd5b948201945b83861015611ba957611b9a86611763565b82529482019490820190611b89565b96505086013592505080821115611bbf57600080fd5b50611bcc85828601611940565b9150509250929050565b600081518084526020808501945080840160005b83811015611c0657815187529582019590820190600101611bea565b509495945050505050565b60208152600061175c6020830184611bd6565b60008060408385031215611c3757600080fd5b611c4083611763565b915060208301358015158114611c5557600080fd5b809150509250929050565b60008060008060808587031215611c7657600080fd5b611c7f85611763565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ca957600080fd5b611cb5878288016119ab565b91505092959194509250565b600080600060608486031215611cd657600080fd5b611cdf84611763565b9250602084013567ffffffffffffffff80821115611cfc57600080fd5b611d0887838801611940565b93506040860135915080821115611d1e57600080fd5b50611d2b86828701611940565b9150509250925092565b60008060008060808587031215611d4b57600080fd5b611d5485611763565b9350602085013567ffffffffffffffff80821115611d7157600080fd5b611d7d88838901611940565b94506040870135915080821115611d9357600080fd5b611d9f88838901611940565b93506060870135915080821115611db557600080fd5b50611cb5878288016119ab565b60008060408385031215611dd557600080fd5b611dde83611763565b9150611dec60208401611763565b90509250929050565b600080600080600060a08688031215611e0d57600080fd5b611e1686611763565b9450611e2460208701611763565b93506040860135925060608601359150608086013567ffffffffffffffff811115611e4e57600080fd5b611ad6888289016119ab565b600181811c90821680611e6e57607f821691505b602082108103611ea7577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151611ebf818560208601611804565b9290920192915050565b600080845481600182811c915080831680611ee557607f831692505b60208084108203611f1d577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015611f315760018114611f6457611f91565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650611f91565b60008b81526020902060005b86811015611f895781548b820152908501908301611f70565b505084890196505b505050505050611fcd611fa48286611ead565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361206557612065612005565b5060010190565b6000826120a2577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b8181038181111561030f5761030f612005565b808202811582820484141761030f5761030f612005565b60ff818116838216019081111561030f5761030f612005565b8082018082111561030f5761030f612005565b6040815260006121106040830185611bd6565b8281036020840152611fcd8185611bd6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261215b60a0830186611bd6565b828103606084015261216d8186611bd6565b905082810360808401526121818185611828565b98975050505050505050565b60006020828403121561219f57600080fd5b815161175c816117b6565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526121ef60a0830184611828565b97965050505050505056fea264697066735822122021876f9937e5ba8a158335f30cd393ae80ee3b8f65906e170ca236e1700c308564736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC1155MintBurnMockOwned.sol/ERC1155MintBurnMockOwned.json b/src/artifacts/contracts/mocks/ERC1155MintBurnMockOwned.sol/ERC1155MintBurnMockOwned.json index c893713..0d130b5 100644 --- a/src/artifacts/contracts/mocks/ERC1155MintBurnMockOwned.sol/ERC1155MintBurnMockOwned.json +++ b/src/artifacts/contracts/mocks/ERC1155MintBurnMockOwned.sol/ERC1155MintBurnMockOwned.json @@ -499,8 +499,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b50604051620029563803806200295683398101604081905262000034916200019c565b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001633908117909155604051839183916000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360046200009e838262000296565b506003620000ad828262000296565b5050505050620003bd565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620000e057600080fd5b815167ffffffffffffffff80821115620000fe57620000fe620000b8565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620001475762000147620000b8565b816040528381526020925086838588010111156200016457600080fd5b600091505b8382101562000188578582018301518183018401529082019062000169565b600093810190920192909252949350505050565b60008060408385031215620001b057600080fd5b825167ffffffffffffffff80821115620001c957600080fd5b620001d786838701620000ce565b93506020850151915080821115620001ee57600080fd5b50620001fd85828601620000ce565b9150509250929050565b600181811c908216806200021c57607f821691505b6020821081036200023d57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200029157600081815260208120601f850160051c810160208610156200026c5750805b601f850160051c820191505b818110156200028d5782815560010162000278565b5050505b505050565b815167ffffffffffffffff811115620002b357620002b3620000b8565b620002cb81620002c4845462000207565b8462000243565b602080601f831160018114620003215760008415620002ea5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556200028d565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101562000370578886015182559484019460019091019084016200034f565b5085821015620003ad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61258980620003cd6000396000f3fe608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063731133e911610097578063b48ab8b611610066578063b48ab8b6146102ae578063e985e9c5146102c1578063f242432a1461030a578063f2fde38b1461031d576100ff565b8063731133e91461024d5780638da5cb5b14610260578063a22cb46514610288578063b390c0ab1461029b576100ff565b806320ec271b116100d357806320ec271b146101fd5780632eb2c2d6146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f455243313135354d696e744275726e4d6f636b4f776e65643a20494e56414c4960448201527f445f4d4554484f4400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611b02565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611b5d565b610366565b60405190151581526020016101a9565b6101dd610371565b6040516101a99190611be8565b6101dd6101f8366004611bfb565b6103ff565b61021061020b366004611d21565b610433565b005b610210610220366004611e13565b610442565b610238610233366004611ebd565b6105e6565b6040516101a99190611fa1565b6101dd610786565b61021061025b366004611fb4565b610793565b60025460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101a9565b610210610296366004612015565b61084c565b6102106102a9366004612051565b6108e3565b6102106102bc366004612073565b6108ee565b6101c56102cf366004612100565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b610210610318366004612133565b6109a1565b61021061032b366004612198565b610b3e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061036082610d16565b6004805461037e906121b3565b80601f01602080910402602001604051908101604052809291908181526020018280546103aa906121b3565b80156103f75780601f106103cc576101008083540402835291602001916103f7565b820191906000526020600020905b8154815290600101906020018083116103da57829003601f168201915b505050505081565b6060600361040c83610d72565b60405160200161041d929190612222565b6040516020818303038152906040529050919050565b61043e338383610ed2565b5050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610496575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610522576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610183565b6105d18585858561109e565b6105df858585855a86611303565b5050505050565b60608151835114610679576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610183565b6000835167ffffffffffffffff81111561069557610695611c14565b6040519080825280602002602001820160405280156106be578160200160208202803683370190505b50905060005b845181101561077e576000808683815181106106e2576106e261232f565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107385761073861232f565b60200260200101518152602001908152602001600020548282815181106107615761076161232f565b6020908102919091010152806107768161238d565b9150506106c4565b509392505050565b6003805461037e906121b3565b60025473ffffffffffffffffffffffffffffffffffffffff16331461083a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b6108468484848461148c565b50505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61043e338383611534565b60025473ffffffffffffffffffffffffffffffffffffffff163314610995576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b610846848484846115d2565b3373ffffffffffffffffffffffffffffffffffffffff861614806109f5575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610a81576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610b24576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610183565b610b30858585856117a8565b6105df858585855a86611883565b60025473ffffffffffffffffffffffffffffffffffffffff163314610be5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8116610c88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f41444452455353000000000000000000000000000000000000000000006064820152608401610183565b60025460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610d6957506001919050565b61036082611a02565b606081600003610db557505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610ddf5780610dc98161238d565b9150610dd89050600a836123c5565b9150610db9565b60008167ffffffffffffffff811115610dfa57610dfa611c14565b6040519080825280601f01601f191660200182016040528015610e24576020820181803683370190505b509050815b8515610ec957610e3a600182612400565b90506000610e49600a886123c5565b610e5490600a612413565b610e5e9088612400565b610e6990603061242a565b905060008160f81b905080848481518110610e8657610e8661232f565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610ec0600a896123c5565b97505050610e29565b50949350505050565b815181518114610f64576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e475448000000000000000000000000000000006064820152608401610183565b60005b8181101561101857828181518110610f8157610f8161232f565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610fdb57610fdb61232f565b6020026020010151815260200190815260200160002060008282546110009190612400565b909155508190506110108161238d565b915050610f67565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611090929190612443565b60405180910390a450505050565b805182511461112f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610183565b815160005b8181101561127d5782818151811061114e5761114e61232f565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106111a8576111a861232f565b6020026020010151815260200190815260200160002060008282546111cd9190612400565b925050819055508281815181106111e6576111e661232f565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106112405761124061232f565b6020026020010151815260200190815260200160002060008282546112659190612468565b909155508190506112758161238d565b915050611134565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516112f4929190612443565b60405180910390a45050505050565b6113228573ffffffffffffffffffffffffffffffffffffffff16611a9f565b156114845760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161136b95949392919061247b565b60206040518083038160008887f115801561138a573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906113af91906124e6565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610183565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906114ca908490612468565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461084660008585855a86611883565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611572908490612400565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b8151835114611663576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e475448000000000000000000000000000000006064820152608401610183565b825160005b81811015611719578381815181106116825761168261232f565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106116dc576116dc61232f565b6020026020010151815260200190815260200160002060008282546117019190612468565b909155508190506117118161238d565b915050611668565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611791929190612443565b60405180910390a46105df60008686865a87611303565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117e6908490612400565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611829908490612468565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101611090565b6118a28573ffffffffffffffffffffffffffffffffffffffff16611a9f565b156114845760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118eb959493929190612503565b60206040518083038160008887f115801561190a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061192f91906124e6565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a5557506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610360565b6000813f8015801590611ad257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611afd57600080fd5b919050565b60008060408385031215611b1557600080fd5b611b1e83611ad9565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611b5a57600080fd5b50565b600060208284031215611b6f57600080fd5b8135611ad281611b2c565b60005b83811015611b95578181015183820152602001611b7d565b50506000910152565b60008151808452611bb6816020860160208601611b7a565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611ad26020830184611b9e565b600060208284031215611c0d57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c8a57611c8a611c14565b604052919050565b600067ffffffffffffffff821115611cac57611cac611c14565b5060051b60200190565b600082601f830112611cc757600080fd5b81356020611cdc611cd783611c92565b611c43565b82815260059290921b84018101918181019086841115611cfb57600080fd5b8286015b84811015611d165780358352918301918301611cff565b509695505050505050565b60008060408385031215611d3457600080fd5b823567ffffffffffffffff80821115611d4c57600080fd5b611d5886838701611cb6565b93506020850135915080821115611d6e57600080fd5b50611d7b85828601611cb6565b9150509250929050565b600082601f830112611d9657600080fd5b813567ffffffffffffffff811115611db057611db0611c14565b611de160207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611c43565b818152846020838601011115611df657600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611e2b57600080fd5b611e3486611ad9565b9450611e4260208701611ad9565b9350604086013567ffffffffffffffff80821115611e5f57600080fd5b611e6b89838a01611cb6565b94506060880135915080821115611e8157600080fd5b611e8d89838a01611cb6565b93506080880135915080821115611ea357600080fd5b50611eb088828901611d85565b9150509295509295909350565b60008060408385031215611ed057600080fd5b823567ffffffffffffffff80821115611ee857600080fd5b818501915085601f830112611efc57600080fd5b81356020611f0c611cd783611c92565b82815260059290921b84018101918181019089841115611f2b57600080fd5b948201945b83861015611f5057611f4186611ad9565b82529482019490820190611f30565b96505086013592505080821115611d6e57600080fd5b600081518084526020808501945080840160005b83811015611f9657815187529582019590820190600101611f7a565b509495945050505050565b602081526000611ad26020830184611f66565b60008060008060808587031215611fca57600080fd5b611fd385611ad9565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ffd57600080fd5b61200987828801611d85565b91505092959194509250565b6000806040838503121561202857600080fd5b61203183611ad9565b91506020830135801515811461204657600080fd5b809150509250929050565b6000806040838503121561206457600080fd5b50508035926020909101359150565b6000806000806080858703121561208957600080fd5b61209285611ad9565b9350602085013567ffffffffffffffff808211156120af57600080fd5b6120bb88838901611cb6565b945060408701359150808211156120d157600080fd5b6120dd88838901611cb6565b935060608701359150808211156120f357600080fd5b5061200987828801611d85565b6000806040838503121561211357600080fd5b61211c83611ad9565b915061212a60208401611ad9565b90509250929050565b600080600080600060a0868803121561214b57600080fd5b61215486611ad9565b945061216260208701611ad9565b93506040860135925060608601359150608086013567ffffffffffffffff81111561218c57600080fd5b611eb088828901611d85565b6000602082840312156121aa57600080fd5b611ad282611ad9565b600181811c908216806121c757607f821691505b602082108103612200577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151612218818560208601611b7a565b9290920192915050565b600080845481600182811c91508083168061223e57607f831692505b60208084108203612276577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561228a57600181146122bd576122ea565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122ea565b60008b81526020902060005b868110156122e25781548b8201529085019083016122c9565b505084890196505b5050505050506123266122fd8286612206565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123be576123be61235e565b5060010190565b6000826123fb577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103605761036061235e565b80820281158282048414176103605761036061235e565b60ff81811683821601908111156103605761036061235e565b6040815260006124566040830185611f66565b82810360208401526123268185611f66565b808201808211156103605761036061235e565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a060408301526124b460a0830186611f66565b82810360608401526124c68186611f66565b905082810360808401526124da8185611b9e565b98975050505050505050565b6000602082840312156124f857600080fd5b8151611ad281611b2c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261254860a0830184611b9e565b97965050505050505056fea264697066735822122044c1db57d1cf6ec77bfdb23aeacf2c3e0ec45a1e284f0b07c52e9c1f4025b42c64736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063731133e911610097578063b48ab8b611610066578063b48ab8b6146102ae578063e985e9c5146102c1578063f242432a1461030a578063f2fde38b1461031d576100ff565b8063731133e91461024d5780638da5cb5b14610260578063a22cb46514610288578063b390c0ab1461029b576100ff565b806320ec271b116100d357806320ec271b146101fd5780632eb2c2d6146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f455243313135354d696e744275726e4d6f636b4f776e65643a20494e56414c4960448201527f445f4d4554484f4400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611b02565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611b5d565b610366565b60405190151581526020016101a9565b6101dd610371565b6040516101a99190611be8565b6101dd6101f8366004611bfb565b6103ff565b61021061020b366004611d21565b610433565b005b610210610220366004611e13565b610442565b610238610233366004611ebd565b6105e6565b6040516101a99190611fa1565b6101dd610786565b61021061025b366004611fb4565b610793565b60025460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101a9565b610210610296366004612015565b61084c565b6102106102a9366004612051565b6108e3565b6102106102bc366004612073565b6108ee565b6101c56102cf366004612100565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b610210610318366004612133565b6109a1565b61021061032b366004612198565b610b3e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061036082610d16565b6004805461037e906121b3565b80601f01602080910402602001604051908101604052809291908181526020018280546103aa906121b3565b80156103f75780601f106103cc576101008083540402835291602001916103f7565b820191906000526020600020905b8154815290600101906020018083116103da57829003601f168201915b505050505081565b6060600361040c83610d72565b60405160200161041d929190612222565b6040516020818303038152906040529050919050565b61043e338383610ed2565b5050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610496575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610522576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610183565b6105d18585858561109e565b6105df858585855a86611303565b5050505050565b60608151835114610679576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610183565b6000835167ffffffffffffffff81111561069557610695611c14565b6040519080825280602002602001820160405280156106be578160200160208202803683370190505b50905060005b845181101561077e576000808683815181106106e2576106e261232f565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107385761073861232f565b60200260200101518152602001908152602001600020548282815181106107615761076161232f565b6020908102919091010152806107768161238d565b9150506106c4565b509392505050565b6003805461037e906121b3565b60025473ffffffffffffffffffffffffffffffffffffffff16331461083a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b6108468484848461148c565b50505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61043e338383611534565b60025473ffffffffffffffffffffffffffffffffffffffff163314610995576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b610846848484846115d2565b3373ffffffffffffffffffffffffffffffffffffffff861614806109f5575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610a81576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610b24576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610183565b610b30858585856117a8565b6105df858585855a86611883565b60025473ffffffffffffffffffffffffffffffffffffffff163314610be5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8116610c88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f41444452455353000000000000000000000000000000000000000000006064820152608401610183565b60025460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610d6957506001919050565b61036082611a02565b606081600003610db557505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610ddf5780610dc98161238d565b9150610dd89050600a836123c5565b9150610db9565b60008167ffffffffffffffff811115610dfa57610dfa611c14565b6040519080825280601f01601f191660200182016040528015610e24576020820181803683370190505b509050815b8515610ec957610e3a600182612400565b90506000610e49600a886123c5565b610e5490600a612413565b610e5e9088612400565b610e6990603061242a565b905060008160f81b905080848481518110610e8657610e8661232f565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610ec0600a896123c5565b97505050610e29565b50949350505050565b815181518114610f64576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e475448000000000000000000000000000000006064820152608401610183565b60005b8181101561101857828181518110610f8157610f8161232f565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610fdb57610fdb61232f565b6020026020010151815260200190815260200160002060008282546110009190612400565b909155508190506110108161238d565b915050610f67565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611090929190612443565b60405180910390a450505050565b805182511461112f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610183565b815160005b8181101561127d5782818151811061114e5761114e61232f565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106111a8576111a861232f565b6020026020010151815260200190815260200160002060008282546111cd9190612400565b925050819055508281815181106111e6576111e661232f565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106112405761124061232f565b6020026020010151815260200190815260200160002060008282546112659190612468565b909155508190506112758161238d565b915050611134565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516112f4929190612443565b60405180910390a45050505050565b6113228573ffffffffffffffffffffffffffffffffffffffff16611a9f565b156114845760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161136b95949392919061247b565b60206040518083038160008887f115801561138a573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906113af91906124e6565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610183565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906114ca908490612468565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461084660008585855a86611883565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611572908490612400565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b8151835114611663576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e475448000000000000000000000000000000006064820152608401610183565b825160005b81811015611719578381815181106116825761168261232f565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106116dc576116dc61232f565b6020026020010151815260200190815260200160002060008282546117019190612468565b909155508190506117118161238d565b915050611668565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611791929190612443565b60405180910390a46105df60008686865a87611303565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117e6908490612400565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611829908490612468565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101611090565b6118a28573ffffffffffffffffffffffffffffffffffffffff16611a9f565b156114845760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118eb959493929190612503565b60206040518083038160008887f115801561190a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061192f91906124e6565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a5557506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610360565b6000813f8015801590611ad257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611afd57600080fd5b919050565b60008060408385031215611b1557600080fd5b611b1e83611ad9565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611b5a57600080fd5b50565b600060208284031215611b6f57600080fd5b8135611ad281611b2c565b60005b83811015611b95578181015183820152602001611b7d565b50506000910152565b60008151808452611bb6816020860160208601611b7a565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611ad26020830184611b9e565b600060208284031215611c0d57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c8a57611c8a611c14565b604052919050565b600067ffffffffffffffff821115611cac57611cac611c14565b5060051b60200190565b600082601f830112611cc757600080fd5b81356020611cdc611cd783611c92565b611c43565b82815260059290921b84018101918181019086841115611cfb57600080fd5b8286015b84811015611d165780358352918301918301611cff565b509695505050505050565b60008060408385031215611d3457600080fd5b823567ffffffffffffffff80821115611d4c57600080fd5b611d5886838701611cb6565b93506020850135915080821115611d6e57600080fd5b50611d7b85828601611cb6565b9150509250929050565b600082601f830112611d9657600080fd5b813567ffffffffffffffff811115611db057611db0611c14565b611de160207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611c43565b818152846020838601011115611df657600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611e2b57600080fd5b611e3486611ad9565b9450611e4260208701611ad9565b9350604086013567ffffffffffffffff80821115611e5f57600080fd5b611e6b89838a01611cb6565b94506060880135915080821115611e8157600080fd5b611e8d89838a01611cb6565b93506080880135915080821115611ea357600080fd5b50611eb088828901611d85565b9150509295509295909350565b60008060408385031215611ed057600080fd5b823567ffffffffffffffff80821115611ee857600080fd5b818501915085601f830112611efc57600080fd5b81356020611f0c611cd783611c92565b82815260059290921b84018101918181019089841115611f2b57600080fd5b948201945b83861015611f5057611f4186611ad9565b82529482019490820190611f30565b96505086013592505080821115611d6e57600080fd5b600081518084526020808501945080840160005b83811015611f9657815187529582019590820190600101611f7a565b509495945050505050565b602081526000611ad26020830184611f66565b60008060008060808587031215611fca57600080fd5b611fd385611ad9565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ffd57600080fd5b61200987828801611d85565b91505092959194509250565b6000806040838503121561202857600080fd5b61203183611ad9565b91506020830135801515811461204657600080fd5b809150509250929050565b6000806040838503121561206457600080fd5b50508035926020909101359150565b6000806000806080858703121561208957600080fd5b61209285611ad9565b9350602085013567ffffffffffffffff808211156120af57600080fd5b6120bb88838901611cb6565b945060408701359150808211156120d157600080fd5b6120dd88838901611cb6565b935060608701359150808211156120f357600080fd5b5061200987828801611d85565b6000806040838503121561211357600080fd5b61211c83611ad9565b915061212a60208401611ad9565b90509250929050565b600080600080600060a0868803121561214b57600080fd5b61215486611ad9565b945061216260208701611ad9565b93506040860135925060608601359150608086013567ffffffffffffffff81111561218c57600080fd5b611eb088828901611d85565b6000602082840312156121aa57600080fd5b611ad282611ad9565b600181811c908216806121c757607f821691505b602082108103612200577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151612218818560208601611b7a565b9290920192915050565b600080845481600182811c91508083168061223e57607f831692505b60208084108203612276577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561228a57600181146122bd576122ea565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122ea565b60008b81526020902060005b868110156122e25781548b8201529085019083016122c9565b505084890196505b5050505050506123266122fd8286612206565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123be576123be61235e565b5060010190565b6000826123fb577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103605761036061235e565b80820281158282048414176103605761036061235e565b60ff81811683821601908111156103605761036061235e565b6040815260006124566040830185611f66565b82810360208401526123268185611f66565b808201808211156103605761036061235e565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a060408301526124b460a0830186611f66565b82810360608401526124c68186611f66565b905082810360808401526124da8185611b9e565b98975050505050505050565b6000602082840312156124f857600080fd5b8151611ad281611b2c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261254860a0830184611b9e565b97965050505050505056fea264697066735822122044c1db57d1cf6ec77bfdb23aeacf2c3e0ec45a1e284f0b07c52e9c1f4025b42c64736f6c63430008120033", + "bytecode": "0x60806040523480156200001157600080fd5b50604051620029563803806200295683398101604081905262000034916200019c565b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001633908117909155604051839183916000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360046200009e838262000296565b506003620000ad828262000296565b5050505050620003bd565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620000e057600080fd5b815167ffffffffffffffff80821115620000fe57620000fe620000b8565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620001475762000147620000b8565b816040528381526020925086838588010111156200016457600080fd5b600091505b8382101562000188578582018301518183018401529082019062000169565b600093810190920192909252949350505050565b60008060408385031215620001b057600080fd5b825167ffffffffffffffff80821115620001c957600080fd5b620001d786838701620000ce565b93506020850151915080821115620001ee57600080fd5b50620001fd85828601620000ce565b9150509250929050565b600181811c908216806200021c57607f821691505b6020821081036200023d57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200029157600081815260208120601f850160051c810160208610156200026c5750805b601f850160051c820191505b818110156200028d5782815560010162000278565b5050505b505050565b815167ffffffffffffffff811115620002b357620002b3620000b8565b620002cb81620002c4845462000207565b8462000243565b602080601f831160018114620003215760008415620002ea5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556200028d565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b8281101562000370578886015182559484019460019091019084016200034f565b5085821015620003ad57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61258980620003cd6000396000f3fe608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063731133e911610097578063b48ab8b611610066578063b48ab8b6146102ae578063e985e9c5146102c1578063f242432a1461030a578063f2fde38b1461031d576100ff565b8063731133e91461024d5780638da5cb5b14610260578063a22cb46514610288578063b390c0ab1461029b576100ff565b806320ec271b116100d357806320ec271b146101fd5780632eb2c2d6146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f455243313135354d696e744275726e4d6f636b4f776e65643a20494e56414c4960448201527f445f4d4554484f4400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611b02565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611b5d565b610366565b60405190151581526020016101a9565b6101dd610371565b6040516101a99190611be8565b6101dd6101f8366004611bfb565b6103ff565b61021061020b366004611d21565b610433565b005b610210610220366004611e13565b610442565b610238610233366004611ebd565b6105e6565b6040516101a99190611fa1565b6101dd610786565b61021061025b366004611fb4565b610793565b60025460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101a9565b610210610296366004612015565b61084c565b6102106102a9366004612051565b6108e3565b6102106102bc366004612073565b6108ee565b6101c56102cf366004612100565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b610210610318366004612133565b6109a1565b61021061032b366004612198565b610b3e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061036082610d16565b6004805461037e906121b3565b80601f01602080910402602001604051908101604052809291908181526020018280546103aa906121b3565b80156103f75780601f106103cc576101008083540402835291602001916103f7565b820191906000526020600020905b8154815290600101906020018083116103da57829003601f168201915b505050505081565b6060600361040c83610d72565b60405160200161041d929190612222565b6040516020818303038152906040529050919050565b61043e338383610ed2565b5050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610496575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610522576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610183565b6105d18585858561109e565b6105df858585855a86611303565b5050505050565b60608151835114610679576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610183565b6000835167ffffffffffffffff81111561069557610695611c14565b6040519080825280602002602001820160405280156106be578160200160208202803683370190505b50905060005b845181101561077e576000808683815181106106e2576106e261232f565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107385761073861232f565b60200260200101518152602001908152602001600020548282815181106107615761076161232f565b6020908102919091010152806107768161238d565b9150506106c4565b509392505050565b6003805461037e906121b3565b60025473ffffffffffffffffffffffffffffffffffffffff16331461083a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b6108468484848461148c565b50505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61043e338383611534565b60025473ffffffffffffffffffffffffffffffffffffffff163314610995576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b610846848484846115d2565b3373ffffffffffffffffffffffffffffffffffffffff861614806109f5575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610a81576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610b24576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610183565b610b30858585856117a8565b6105df858585855a86611883565b60025473ffffffffffffffffffffffffffffffffffffffff163314610be5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8116610c88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f41444452455353000000000000000000000000000000000000000000006064820152608401610183565b60025460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610d6957506001919050565b61036082611a02565b606081600003610db557505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610ddf5780610dc98161238d565b9150610dd89050600a836123c5565b9150610db9565b60008167ffffffffffffffff811115610dfa57610dfa611c14565b6040519080825280601f01601f191660200182016040528015610e24576020820181803683370190505b509050815b8515610ec957610e3a600182612400565b90506000610e49600a886123c5565b610e5490600a612413565b610e5e9088612400565b610e6990603061242a565b905060008160f81b905080848481518110610e8657610e8661232f565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610ec0600a896123c5565b97505050610e29565b50949350505050565b815181518114610f64576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e475448000000000000000000000000000000006064820152608401610183565b60005b8181101561101857828181518110610f8157610f8161232f565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610fdb57610fdb61232f565b6020026020010151815260200190815260200160002060008282546110009190612400565b909155508190506110108161238d565b915050610f67565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611090929190612443565b60405180910390a450505050565b805182511461112f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610183565b815160005b8181101561127d5782818151811061114e5761114e61232f565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106111a8576111a861232f565b6020026020010151815260200190815260200160002060008282546111cd9190612400565b925050819055508281815181106111e6576111e661232f565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106112405761124061232f565b6020026020010151815260200190815260200160002060008282546112659190612468565b909155508190506112758161238d565b915050611134565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516112f4929190612443565b60405180910390a45050505050565b6113228573ffffffffffffffffffffffffffffffffffffffff16611a9f565b156114845760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161136b95949392919061247b565b60206040518083038160008887f115801561138a573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906113af91906124e6565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610183565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906114ca908490612468565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461084660008585855a86611883565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611572908490612400565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b8151835114611663576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e475448000000000000000000000000000000006064820152608401610183565b825160005b81811015611719578381815181106116825761168261232f565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106116dc576116dc61232f565b6020026020010151815260200190815260200160002060008282546117019190612468565b909155508190506117118161238d565b915050611668565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611791929190612443565b60405180910390a46105df60008686865a87611303565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117e6908490612400565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611829908490612468565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101611090565b6118a28573ffffffffffffffffffffffffffffffffffffffff16611a9f565b156114845760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118eb959493929190612503565b60206040518083038160008887f115801561190a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061192f91906124e6565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a5557506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610360565b6000813f8015801590611ad257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611afd57600080fd5b919050565b60008060408385031215611b1557600080fd5b611b1e83611ad9565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611b5a57600080fd5b50565b600060208284031215611b6f57600080fd5b8135611ad281611b2c565b60005b83811015611b95578181015183820152602001611b7d565b50506000910152565b60008151808452611bb6816020860160208601611b7a565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611ad26020830184611b9e565b600060208284031215611c0d57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c8a57611c8a611c14565b604052919050565b600067ffffffffffffffff821115611cac57611cac611c14565b5060051b60200190565b600082601f830112611cc757600080fd5b81356020611cdc611cd783611c92565b611c43565b82815260059290921b84018101918181019086841115611cfb57600080fd5b8286015b84811015611d165780358352918301918301611cff565b509695505050505050565b60008060408385031215611d3457600080fd5b823567ffffffffffffffff80821115611d4c57600080fd5b611d5886838701611cb6565b93506020850135915080821115611d6e57600080fd5b50611d7b85828601611cb6565b9150509250929050565b600082601f830112611d9657600080fd5b813567ffffffffffffffff811115611db057611db0611c14565b611de160207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611c43565b818152846020838601011115611df657600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611e2b57600080fd5b611e3486611ad9565b9450611e4260208701611ad9565b9350604086013567ffffffffffffffff80821115611e5f57600080fd5b611e6b89838a01611cb6565b94506060880135915080821115611e8157600080fd5b611e8d89838a01611cb6565b93506080880135915080821115611ea357600080fd5b50611eb088828901611d85565b9150509295509295909350565b60008060408385031215611ed057600080fd5b823567ffffffffffffffff80821115611ee857600080fd5b818501915085601f830112611efc57600080fd5b81356020611f0c611cd783611c92565b82815260059290921b84018101918181019089841115611f2b57600080fd5b948201945b83861015611f5057611f4186611ad9565b82529482019490820190611f30565b96505086013592505080821115611d6e57600080fd5b600081518084526020808501945080840160005b83811015611f9657815187529582019590820190600101611f7a565b509495945050505050565b602081526000611ad26020830184611f66565b60008060008060808587031215611fca57600080fd5b611fd385611ad9565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ffd57600080fd5b61200987828801611d85565b91505092959194509250565b6000806040838503121561202857600080fd5b61203183611ad9565b91506020830135801515811461204657600080fd5b809150509250929050565b6000806040838503121561206457600080fd5b50508035926020909101359150565b6000806000806080858703121561208957600080fd5b61209285611ad9565b9350602085013567ffffffffffffffff808211156120af57600080fd5b6120bb88838901611cb6565b945060408701359150808211156120d157600080fd5b6120dd88838901611cb6565b935060608701359150808211156120f357600080fd5b5061200987828801611d85565b6000806040838503121561211357600080fd5b61211c83611ad9565b915061212a60208401611ad9565b90509250929050565b600080600080600060a0868803121561214b57600080fd5b61215486611ad9565b945061216260208701611ad9565b93506040860135925060608601359150608086013567ffffffffffffffff81111561218c57600080fd5b611eb088828901611d85565b6000602082840312156121aa57600080fd5b611ad282611ad9565b600181811c908216806121c757607f821691505b602082108103612200577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151612218818560208601611b7a565b9290920192915050565b600080845481600182811c91508083168061223e57607f831692505b60208084108203612276577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561228a57600181146122bd576122ea565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122ea565b60008b81526020902060005b868110156122e25781548b8201529085019083016122c9565b505084890196505b5050505050506123266122fd8286612206565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123be576123be61235e565b5060010190565b6000826123fb577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103605761036061235e565b80820281158282048414176103605761036061235e565b60ff81811683821601908111156103605761036061235e565b6040815260006124566040830185611f66565b82810360208401526123268185611f66565b808201808211156103605761036061235e565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a060408301526124b460a0830186611f66565b82810360608401526124c68186611f66565b905082810360808401526124da8185611b9e565b98975050505050505050565b6000602082840312156124f857600080fd5b8151611ad281611b2c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261254860a0830184611b9e565b97965050505050505056fea2646970667358221220d434b7f3d8efff948a4ba927ed29c35b932037a49587441744d32cee77bbbc4964736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063731133e911610097578063b48ab8b611610066578063b48ab8b6146102ae578063e985e9c5146102c1578063f242432a1461030a578063f2fde38b1461031d576100ff565b8063731133e91461024d5780638da5cb5b14610260578063a22cb46514610288578063b390c0ab1461029b576100ff565b806320ec271b116100d357806320ec271b146101fd5780632eb2c2d6146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f455243313135354d696e744275726e4d6f636b4f776e65643a20494e56414c4960448201527f445f4d4554484f4400000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611b02565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611b5d565b610366565b60405190151581526020016101a9565b6101dd610371565b6040516101a99190611be8565b6101dd6101f8366004611bfb565b6103ff565b61021061020b366004611d21565b610433565b005b610210610220366004611e13565b610442565b610238610233366004611ebd565b6105e6565b6040516101a99190611fa1565b6101dd610786565b61021061025b366004611fb4565b610793565b60025460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101a9565b610210610296366004612015565b61084c565b6102106102a9366004612051565b6108e3565b6102106102bc366004612073565b6108ee565b6101c56102cf366004612100565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b610210610318366004612133565b6109a1565b61021061032b366004612198565b610b3e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b600061036082610d16565b6004805461037e906121b3565b80601f01602080910402602001604051908101604052809291908181526020018280546103aa906121b3565b80156103f75780601f106103cc576101008083540402835291602001916103f7565b820191906000526020600020905b8154815290600101906020018083116103da57829003601f168201915b505050505081565b6060600361040c83610d72565b60405160200161041d929190612222565b6040516020818303038152906040529050919050565b61043e338383610ed2565b5050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610496575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610522576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f5200000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105c5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e54000000000000000000000000000000006064820152608401610183565b6105d18585858561109e565b6105df858585855a86611303565b5050505050565b60608151835114610679576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e47544800000000000000000000000000000000000000006064820152608401610183565b6000835167ffffffffffffffff81111561069557610695611c14565b6040519080825280602002602001820160405280156106be578160200160208202803683370190505b50905060005b845181101561077e576000808683815181106106e2576106e261232f565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107385761073861232f565b60200260200101518152602001908152602001600020548282815181106107615761076161232f565b6020908102919091010152806107768161238d565b9150506106c4565b509392505050565b6003805461037e906121b3565b60025473ffffffffffffffffffffffffffffffffffffffff16331461083a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b6108468484848461148c565b50505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b61043e338383611534565b60025473ffffffffffffffffffffffffffffffffffffffff163314610995576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b610846848484846115d2565b3373ffffffffffffffffffffffffffffffffffffffff861614806109f5575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610a81576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f52000000000000000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610b24576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e540000000000000000000000000000000000000000006064820152608401610183565b610b30858585856117a8565b6105df858585855a86611883565b60025473ffffffffffffffffffffffffffffffffffffffff163314610be5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e455200000000000000000000000000000000000000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8116610c88576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f41444452455353000000000000000000000000000000000000000000006064820152608401610183565b60025460405173ffffffffffffffffffffffffffffffffffffffff8084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610d6957506001919050565b61036082611a02565b606081600003610db557505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610ddf5780610dc98161238d565b9150610dd89050600a836123c5565b9150610db9565b60008167ffffffffffffffff811115610dfa57610dfa611c14565b6040519080825280601f01601f191660200182016040528015610e24576020820181803683370190505b509050815b8515610ec957610e3a600182612400565b90506000610e49600a886123c5565b610e5490600a612413565b610e5e9088612400565b610e6990603061242a565b905060008160f81b905080848481518110610e8657610e8661232f565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610ec0600a896123c5565b97505050610e29565b50949350505050565b815181518114610f64576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e475448000000000000000000000000000000006064820152608401610183565b60005b8181101561101857828181518110610f8157610f8161232f565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610fdb57610fdb61232f565b6020026020010151815260200190815260200160002060008282546110009190612400565b909155508190506110108161238d565b915050610f67565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611090929190612443565b60405180910390a450505050565b805182511461112f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e47544800000000000000000000006064820152608401610183565b815160005b8181101561127d5782818151811061114e5761114e61232f565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106111a8576111a861232f565b6020026020010151815260200190815260200160002060008282546111cd9190612400565b925050819055508281815181106111e6576111e661232f565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106112405761124061232f565b6020026020010151815260200190815260200160002060008282546112659190612468565b909155508190506112758161238d565b915050611134565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516112f4929190612443565b60405180910390a45050505050565b6113228573ffffffffffffffffffffffffffffffffffffffff16611a9f565b156114845760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161136b95949392919061247b565b60206040518083038160008887f115801561138a573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906113af91906124e6565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d455353414745006064820152608401610183565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906114ca908490612468565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a461084660008585855a86611883565b73ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611572908490612400565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b8151835114611663576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e475448000000000000000000000000000000006064820152608401610183565b825160005b81811015611719578381815181106116825761168261232f565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106116dc576116dc61232f565b6020026020010151815260200190815260200160002060008282546117019190612468565b909155508190506117118161238d565b915050611668565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611791929190612443565b60405180910390a46105df60008686865a87611303565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117e6908490612400565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290611829908490612468565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f629101611090565b6118a28573ffffffffffffffffffffffffffffffffffffffff16611a9f565b156114845760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118eb959493929190612503565b60206040518083038160008887f115801561190a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061192f91906124e6565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611482576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d4553534147450000000000006064820152608401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a5557506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610360565b6000813f8015801590611ad257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611afd57600080fd5b919050565b60008060408385031215611b1557600080fd5b611b1e83611ad9565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611b5a57600080fd5b50565b600060208284031215611b6f57600080fd5b8135611ad281611b2c565b60005b83811015611b95578181015183820152602001611b7d565b50506000910152565b60008151808452611bb6816020860160208601611b7a565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611ad26020830184611b9e565b600060208284031215611c0d57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c8a57611c8a611c14565b604052919050565b600067ffffffffffffffff821115611cac57611cac611c14565b5060051b60200190565b600082601f830112611cc757600080fd5b81356020611cdc611cd783611c92565b611c43565b82815260059290921b84018101918181019086841115611cfb57600080fd5b8286015b84811015611d165780358352918301918301611cff565b509695505050505050565b60008060408385031215611d3457600080fd5b823567ffffffffffffffff80821115611d4c57600080fd5b611d5886838701611cb6565b93506020850135915080821115611d6e57600080fd5b50611d7b85828601611cb6565b9150509250929050565b600082601f830112611d9657600080fd5b813567ffffffffffffffff811115611db057611db0611c14565b611de160207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611c43565b818152846020838601011115611df657600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611e2b57600080fd5b611e3486611ad9565b9450611e4260208701611ad9565b9350604086013567ffffffffffffffff80821115611e5f57600080fd5b611e6b89838a01611cb6565b94506060880135915080821115611e8157600080fd5b611e8d89838a01611cb6565b93506080880135915080821115611ea357600080fd5b50611eb088828901611d85565b9150509295509295909350565b60008060408385031215611ed057600080fd5b823567ffffffffffffffff80821115611ee857600080fd5b818501915085601f830112611efc57600080fd5b81356020611f0c611cd783611c92565b82815260059290921b84018101918181019089841115611f2b57600080fd5b948201945b83861015611f5057611f4186611ad9565b82529482019490820190611f30565b96505086013592505080821115611d6e57600080fd5b600081518084526020808501945080840160005b83811015611f9657815187529582019590820190600101611f7a565b509495945050505050565b602081526000611ad26020830184611f66565b60008060008060808587031215611fca57600080fd5b611fd385611ad9565b93506020850135925060408501359150606085013567ffffffffffffffff811115611ffd57600080fd5b61200987828801611d85565b91505092959194509250565b6000806040838503121561202857600080fd5b61203183611ad9565b91506020830135801515811461204657600080fd5b809150509250929050565b6000806040838503121561206457600080fd5b50508035926020909101359150565b6000806000806080858703121561208957600080fd5b61209285611ad9565b9350602085013567ffffffffffffffff808211156120af57600080fd5b6120bb88838901611cb6565b945060408701359150808211156120d157600080fd5b6120dd88838901611cb6565b935060608701359150808211156120f357600080fd5b5061200987828801611d85565b6000806040838503121561211357600080fd5b61211c83611ad9565b915061212a60208401611ad9565b90509250929050565b600080600080600060a0868803121561214b57600080fd5b61215486611ad9565b945061216260208701611ad9565b93506040860135925060608601359150608086013567ffffffffffffffff81111561218c57600080fd5b611eb088828901611d85565b6000602082840312156121aa57600080fd5b611ad282611ad9565b600181811c908216806121c757607f821691505b602082108103612200577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b60008151612218818560208601611b7a565b9290920192915050565b600080845481600182811c91508083168061223e57607f831692505b60208084108203612276577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561228a57600181146122bd576122ea565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122ea565b60008b81526020902060005b868110156122e25781548b8201529085019083016122c9565b505084890196505b5050505050506123266122fd8286612206565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123be576123be61235e565b5060010190565b6000826123fb577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b818103818111156103605761036061235e565b80820281158282048414176103605761036061235e565b60ff81811683821601908111156103605761036061235e565b6040815260006124566040830185611f66565b82810360208401526123268185611f66565b808201808211156103605761036061235e565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a060408301526124b460a0830186611f66565b82810360608401526124c68186611f66565b905082810360808401526124da8185611b9e565b98975050505050505050565b6000602082840312156124f857600080fd5b8151611ad281611b2c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261254860a0830184611b9e565b97965050505050505056fea2646970667358221220d434b7f3d8efff948a4ba927ed29c35b932037a49587441744d32cee77bbbc4964736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC1155MintBurnPackedBalanceMock.sol/ERC1155MintBurnPackedBalanceMock.json b/src/artifacts/contracts/mocks/ERC1155MintBurnPackedBalanceMock.sol/ERC1155MintBurnPackedBalanceMock.json index ed1b53e..33c972b 100644 --- a/src/artifacts/contracts/mocks/ERC1155MintBurnPackedBalanceMock.sol/ERC1155MintBurnPackedBalanceMock.json +++ b/src/artifacts/contracts/mocks/ERC1155MintBurnPackedBalanceMock.sol/ERC1155MintBurnPackedBalanceMock.json @@ -512,8 +512,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b5060405162002e0738038062002e07833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b612a9480620003736000396000f3fe608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063a22cb46511610097578063db90e83c11610066578063db90e83c14610299578063e985e9c5146102c1578063eaec5f811461030a578063f242432a1461031d576100ff565b8063a22cb4651461024d578063a3f091f514610260578063bd7a6c4114610273578063d7a0ad9014610286576100ff565b80632eb2c2d6116100d35780632eb2c2d6146101fd578063437ecbe9146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611e57565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611eb2565b610387565b60405190151581526020016101a9565b6101dd610392565b6040516101a99190611f3d565b6101dd6101f8366004611f50565b610420565b61021061020b366004612104565b610454565b005b6102106102203660046121ae565b6105f8565b6102386102333660046121e1565b610608565b6040516101a991906122dc565b6101dd610902565b61021061025b3660046122ef565b61090f565b61021061026e36600461232b565b6109a6565b61021061028136600461238c565b6109b8565b610210610294366004612400565b6109c3565b6102ac6102a7366004611f50565b6109cf565b604080519283526020830191909152016101a9565b6101c56102cf36600461248d565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61019f6103183660046124c0565b610a09565b61021061032b3660046124e2565b610a37565b600080600061033e846109cf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061037c9082610a09565b925050505b92915050565b600061038182610bd4565b6003805461039f90612547565b80601f01602080910402602001604051908101604052809291908181526020018280546103cb90612547565b80156104185780601f106103ed57610100808354040283529160200191610418565b820191906000526020600020905b8154815290600101906020018083116103fb57829003601f168201915b505050505081565b6060600261042d83610c30565b60405160200161043e9291906125b6565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806104a8575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f52000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610183565b6105e385858585610d90565b6105f1858585855a866111f3565b5050505050565b6106038383836113a2565b505050565b8151815160609190811461069e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610183565b6000806106c4856000815181106106b7576106b76126c3565b60200260200101516109cf565b915091506000806000886000815181106106e0576106e06126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561075657610756611f69565b60405190808252806020026020018201604052801561077f578160200160208202803683370190505b50905061078c8385610a09565b8160008151811061079f5761079f6126c3565b602090810291909101015260015b868110156108f5576107ca8982815181106106b7576106b76126c3565b9096509450828614158061084857508981815181106107eb576107eb6126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a6001836108179190612721565b81518110610827576108276126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156108bc576000808b8381518110610862576108626126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6108c68486610a09565b8282815181106108d8576108d86126c3565b6020908102919091010152806108ed81612734565b9150506107ad565b5098975050505050505050565b6002805461039f90612547565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6109b28484848461140a565b50505050565b61060383838361147c565b6109b2848484846115f0565b6000806109df602061010061279b565b6109e9908461279b565b91506109f8602061010061279b565b610a0290846127af565b9050915091565b600080610a1c6001640100000000612721565b90506000610a2b8460206127c3565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610a8b575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610bba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610183565b610bc685858585611851565b6105f1858585855a866118c0565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610c2757506001919050565b61038182611a65565b606081600003610c7357505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610c9d5780610c8781612734565b9150610c969050600a8361279b565b9150610c77565b60008167ffffffffffffffff811115610cb857610cb8611f69565b6040519080825280601f01601f191660200182016040528015610ce2576020820181803683370190505b509050815b8515610d8757610cf8600182612721565b90506000610d07600a8861279b565b610d1290600a6127c3565b610d1c9088612721565b610d279060306127da565b905060008160f81b905080848481518110610d4457610d446126c3565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610d7e600a8961279b565b97505050610ce7565b50949350505050565b815181518114610e48576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610183565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610e845750600081115b1561108457600080610ea2856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610f009190849088908590610ef157610ef16126c3565b60200260200101516001611b02565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610f5c9190859089908590610f4d57610f4d6126c3565b60200260200101516000611b02565b90508360015b8681101561103257610f7f8982815181106106b7576106b76126c3565b9096509450818614610fee5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b61100584868a8481518110610ef157610ef16126c3565b935061101e83868a8481518110610f4d57610f4d6126c3565b92508061102a81612734565b915050610f62565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a1681528082528381209581529490529220919091555061116e565b60005b8181101561116c578281815181106110a1576110a16126c3565b60200260200101516110cc878684815181106110bf576110bf6126c3565b6020026020010151610330565b101561115a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610183565b8061116481612734565b915050611087565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111e49291906127f3565b60405180910390a45050505050565b6112128573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161125b959493929190612818565b60206040518083038160008887f115801561127a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061129f9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610183565b505b505050505050565b6113af8383836001611da7565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6114178484846000611da7565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46109b260008585855a866118c0565b81518151811461150e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e4754480000006064820152608401610183565b60005b8181101561156a576115588585838151811061152f5761152f6126c3565b6020026020010151858481518110611549576115496126c3565b60200260200101516001611da7565b8061156281612734565b915050611511565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516115e29291906127f3565b60405180910390a450505050565b8151835114611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e47544800006064820152608401610183565b8251156117c3576000806116a1856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091528120548751939550919350916116f09190849088908590610f4d57610f4d6126c3565b86519091508360015b8281101561178a576117168982815181106106b7576106b76126c3565b909650945081861461175f5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b61177684868a8481518110610f4d57610f4d6126c3565b93508061178281612734565b9150506116f9565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161183a9291906127f3565b60405180910390a46109b260008585855a866111f3565b61185e8483836001611da7565b61186b8383836000611da7565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016115e2565b6118df8573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016119289594939291906128a0565b60206040518083038160008887f1158015611947573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061196c9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611ab857506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610381565b600080611b108560206127c3565b90506000611b246001640100000000612721565b90506000846001811115611b3a57611b3a6128f0565b03611bf957611b4b85831b8861291f565b9250611b5960206002612a52565b611b678689851c841661291f565b10611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610183565b611d63565b6001846001811115611c0d57611c0d6128f0565b03611cb557611c1e85831b88612721565b925084818389901c161015611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610183565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610183565b5050949350505050565b6000813f8015801590611da057507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b600080611db3856109cf565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150611df390828686611b02565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611e5257600080fd5b919050565b60008060408385031215611e6a57600080fd5b611e7383611e2e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611eaf57600080fd5b50565b600060208284031215611ec457600080fd5b8135611da081611e81565b60005b83811015611eea578181015183820152602001611ed2565b50506000910152565b60008151808452611f0b816020860160208601611ecf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611da06020830184611ef3565b600060208284031215611f6257600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611fdf57611fdf611f69565b604052919050565b600067ffffffffffffffff82111561200157612001611f69565b5060051b60200190565b600082601f83011261201c57600080fd5b8135602061203161202c83611fe7565b611f98565b82815260059290921b8401810191818101908684111561205057600080fd5b8286015b8481101561206b5780358352918301918301612054565b509695505050505050565b600082601f83011261208757600080fd5b813567ffffffffffffffff8111156120a1576120a1611f69565b6120d260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611f98565b8181528460208386010111156120e757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561211c57600080fd5b61212586611e2e565b945061213360208701611e2e565b9350604086013567ffffffffffffffff8082111561215057600080fd5b61215c89838a0161200b565b9450606088013591508082111561217257600080fd5b61217e89838a0161200b565b9350608088013591508082111561219457600080fd5b506121a188828901612076565b9150509295509295909350565b6000806000606084860312156121c357600080fd5b6121cc84611e2e565b95602085013595506040909401359392505050565b600080604083850312156121f457600080fd5b823567ffffffffffffffff8082111561220c57600080fd5b818501915085601f83011261222057600080fd5b8135602061223061202c83611fe7565b82815260059290921b8401810191818101908984111561224f57600080fd5b948201945b838610156122745761226586611e2e565b82529482019490820190612254565b9650508601359250508082111561228a57600080fd5b506122978582860161200b565b9150509250929050565b600081518084526020808501945080840160005b838110156122d1578151875295820195908201906001016122b5565b509495945050505050565b602081526000611da060208301846122a1565b6000806040838503121561230257600080fd5b61230b83611e2e565b91506020830135801515811461232057600080fd5b809150509250929050565b6000806000806080858703121561234157600080fd5b61234a85611e2e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561237457600080fd5b61238087828801612076565b91505092959194509250565b6000806000606084860312156123a157600080fd5b6123aa84611e2e565b9250602084013567ffffffffffffffff808211156123c757600080fd5b6123d38783880161200b565b935060408601359150808211156123e957600080fd5b506123f68682870161200b565b9150509250925092565b6000806000806080858703121561241657600080fd5b61241f85611e2e565b9350602085013567ffffffffffffffff8082111561243c57600080fd5b6124488883890161200b565b9450604087013591508082111561245e57600080fd5b61246a8883890161200b565b9350606087013591508082111561248057600080fd5b5061238087828801612076565b600080604083850312156124a057600080fd5b6124a983611e2e565b91506124b760208401611e2e565b90509250929050565b600080604083850312156124d357600080fd5b50508035926020909101359150565b600080600080600060a086880312156124fa57600080fd5b61250386611e2e565b945061251160208701611e2e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561253b57600080fd5b6121a188828901612076565b600181811c9082168061255b57607f821691505b602082108103612594577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516125ac818560208601611ecf565b9290920192915050565b600080845481600182811c9150808316806125d257607f831692505b6020808410820361260a577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561261e57600181146126515761267e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008616895284151585028901965061267e565b60008b81526020902060005b868110156126765781548b82015290850190830161265d565b505084890196505b5050505050506126ba612691828661259a565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610381576103816126f2565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612765576127656126f2565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826127aa576127aa61276c565b500490565b6000826127be576127be61276c565b500690565b8082028115828204841417610381576103816126f2565b60ff8181168382160190811115610381576103816126f2565b60408152600061280660408301856122a1565b82810360208401526126ba81856122a1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261285160a08301866122a1565b828103606084015261286381866122a1565b905082810360808401526128778185611ef3565b98975050505050505050565b60006020828403121561289557600080fd5b8151611da081611e81565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526128e560a0830184611ef3565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b80820180821115610381576103816126f2565b600181815b8085111561298b57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612971576129716126f2565b8085161561297e57918102915b93841c9390800290612937565b509250929050565b6000826129a257506001610381565b816129af57506000610381565b81600181146129c557600281146129cf576129eb565b6001915050610381565b60ff8411156129e0576129e06126f2565b50506001821b610381565b5060208310610133831016604e8410600b8410161715612a0e575081810a610381565b612a188383612932565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612a4a57612a4a6126f2565b029392505050565b6000611da0838361299356fea2646970667358221220892dcdbd4e694beefeb475e8bd5b4daf66d1daf3b0c853d3fb8ca4002e1bd0ee64736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063a22cb46511610097578063db90e83c11610066578063db90e83c14610299578063e985e9c5146102c1578063eaec5f811461030a578063f242432a1461031d576100ff565b8063a22cb4651461024d578063a3f091f514610260578063bd7a6c4114610273578063d7a0ad9014610286576100ff565b80632eb2c2d6116100d35780632eb2c2d6146101fd578063437ecbe9146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611e57565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611eb2565b610387565b60405190151581526020016101a9565b6101dd610392565b6040516101a99190611f3d565b6101dd6101f8366004611f50565b610420565b61021061020b366004612104565b610454565b005b6102106102203660046121ae565b6105f8565b6102386102333660046121e1565b610608565b6040516101a991906122dc565b6101dd610902565b61021061025b3660046122ef565b61090f565b61021061026e36600461232b565b6109a6565b61021061028136600461238c565b6109b8565b610210610294366004612400565b6109c3565b6102ac6102a7366004611f50565b6109cf565b604080519283526020830191909152016101a9565b6101c56102cf36600461248d565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61019f6103183660046124c0565b610a09565b61021061032b3660046124e2565b610a37565b600080600061033e846109cf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061037c9082610a09565b925050505b92915050565b600061038182610bd4565b6003805461039f90612547565b80601f01602080910402602001604051908101604052809291908181526020018280546103cb90612547565b80156104185780601f106103ed57610100808354040283529160200191610418565b820191906000526020600020905b8154815290600101906020018083116103fb57829003601f168201915b505050505081565b6060600261042d83610c30565b60405160200161043e9291906125b6565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806104a8575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f52000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610183565b6105e385858585610d90565b6105f1858585855a866111f3565b5050505050565b6106038383836113a2565b505050565b8151815160609190811461069e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610183565b6000806106c4856000815181106106b7576106b76126c3565b60200260200101516109cf565b915091506000806000886000815181106106e0576106e06126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561075657610756611f69565b60405190808252806020026020018201604052801561077f578160200160208202803683370190505b50905061078c8385610a09565b8160008151811061079f5761079f6126c3565b602090810291909101015260015b868110156108f5576107ca8982815181106106b7576106b76126c3565b9096509450828614158061084857508981815181106107eb576107eb6126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a6001836108179190612721565b81518110610827576108276126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156108bc576000808b8381518110610862576108626126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6108c68486610a09565b8282815181106108d8576108d86126c3565b6020908102919091010152806108ed81612734565b9150506107ad565b5098975050505050505050565b6002805461039f90612547565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6109b28484848461140a565b50505050565b61060383838361147c565b6109b2848484846115f0565b6000806109df602061010061279b565b6109e9908461279b565b91506109f8602061010061279b565b610a0290846127af565b9050915091565b600080610a1c6001640100000000612721565b90506000610a2b8460206127c3565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610a8b575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610bba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610183565b610bc685858585611851565b6105f1858585855a866118c0565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610c2757506001919050565b61038182611a65565b606081600003610c7357505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610c9d5780610c8781612734565b9150610c969050600a8361279b565b9150610c77565b60008167ffffffffffffffff811115610cb857610cb8611f69565b6040519080825280601f01601f191660200182016040528015610ce2576020820181803683370190505b509050815b8515610d8757610cf8600182612721565b90506000610d07600a8861279b565b610d1290600a6127c3565b610d1c9088612721565b610d279060306127da565b905060008160f81b905080848481518110610d4457610d446126c3565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610d7e600a8961279b565b97505050610ce7565b50949350505050565b815181518114610e48576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610183565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610e845750600081115b1561108457600080610ea2856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610f009190849088908590610ef157610ef16126c3565b60200260200101516001611b02565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610f5c9190859089908590610f4d57610f4d6126c3565b60200260200101516000611b02565b90508360015b8681101561103257610f7f8982815181106106b7576106b76126c3565b9096509450818614610fee5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b61100584868a8481518110610ef157610ef16126c3565b935061101e83868a8481518110610f4d57610f4d6126c3565b92508061102a81612734565b915050610f62565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a1681528082528381209581529490529220919091555061116e565b60005b8181101561116c578281815181106110a1576110a16126c3565b60200260200101516110cc878684815181106110bf576110bf6126c3565b6020026020010151610330565b101561115a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610183565b8061116481612734565b915050611087565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111e49291906127f3565b60405180910390a45050505050565b6112128573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161125b959493929190612818565b60206040518083038160008887f115801561127a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061129f9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610183565b505b505050505050565b6113af8383836001611da7565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6114178484846000611da7565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46109b260008585855a866118c0565b81518151811461150e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e4754480000006064820152608401610183565b60005b8181101561156a576115588585838151811061152f5761152f6126c3565b6020026020010151858481518110611549576115496126c3565b60200260200101516001611da7565b8061156281612734565b915050611511565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516115e29291906127f3565b60405180910390a450505050565b8151835114611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e47544800006064820152608401610183565b8251156117c3576000806116a1856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091528120548751939550919350916116f09190849088908590610f4d57610f4d6126c3565b86519091508360015b8281101561178a576117168982815181106106b7576106b76126c3565b909650945081861461175f5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b61177684868a8481518110610f4d57610f4d6126c3565b93508061178281612734565b9150506116f9565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161183a9291906127f3565b60405180910390a46109b260008585855a866111f3565b61185e8483836001611da7565b61186b8383836000611da7565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016115e2565b6118df8573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016119289594939291906128a0565b60206040518083038160008887f1158015611947573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061196c9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611ab857506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610381565b600080611b108560206127c3565b90506000611b246001640100000000612721565b90506000846001811115611b3a57611b3a6128f0565b03611bf957611b4b85831b8861291f565b9250611b5960206002612a52565b611b678689851c841661291f565b10611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610183565b611d63565b6001846001811115611c0d57611c0d6128f0565b03611cb557611c1e85831b88612721565b925084818389901c161015611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610183565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610183565b5050949350505050565b6000813f8015801590611da057507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b600080611db3856109cf565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150611df390828686611b02565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611e5257600080fd5b919050565b60008060408385031215611e6a57600080fd5b611e7383611e2e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611eaf57600080fd5b50565b600060208284031215611ec457600080fd5b8135611da081611e81565b60005b83811015611eea578181015183820152602001611ed2565b50506000910152565b60008151808452611f0b816020860160208601611ecf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611da06020830184611ef3565b600060208284031215611f6257600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611fdf57611fdf611f69565b604052919050565b600067ffffffffffffffff82111561200157612001611f69565b5060051b60200190565b600082601f83011261201c57600080fd5b8135602061203161202c83611fe7565b611f98565b82815260059290921b8401810191818101908684111561205057600080fd5b8286015b8481101561206b5780358352918301918301612054565b509695505050505050565b600082601f83011261208757600080fd5b813567ffffffffffffffff8111156120a1576120a1611f69565b6120d260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611f98565b8181528460208386010111156120e757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561211c57600080fd5b61212586611e2e565b945061213360208701611e2e565b9350604086013567ffffffffffffffff8082111561215057600080fd5b61215c89838a0161200b565b9450606088013591508082111561217257600080fd5b61217e89838a0161200b565b9350608088013591508082111561219457600080fd5b506121a188828901612076565b9150509295509295909350565b6000806000606084860312156121c357600080fd5b6121cc84611e2e565b95602085013595506040909401359392505050565b600080604083850312156121f457600080fd5b823567ffffffffffffffff8082111561220c57600080fd5b818501915085601f83011261222057600080fd5b8135602061223061202c83611fe7565b82815260059290921b8401810191818101908984111561224f57600080fd5b948201945b838610156122745761226586611e2e565b82529482019490820190612254565b9650508601359250508082111561228a57600080fd5b506122978582860161200b565b9150509250929050565b600081518084526020808501945080840160005b838110156122d1578151875295820195908201906001016122b5565b509495945050505050565b602081526000611da060208301846122a1565b6000806040838503121561230257600080fd5b61230b83611e2e565b91506020830135801515811461232057600080fd5b809150509250929050565b6000806000806080858703121561234157600080fd5b61234a85611e2e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561237457600080fd5b61238087828801612076565b91505092959194509250565b6000806000606084860312156123a157600080fd5b6123aa84611e2e565b9250602084013567ffffffffffffffff808211156123c757600080fd5b6123d38783880161200b565b935060408601359150808211156123e957600080fd5b506123f68682870161200b565b9150509250925092565b6000806000806080858703121561241657600080fd5b61241f85611e2e565b9350602085013567ffffffffffffffff8082111561243c57600080fd5b6124488883890161200b565b9450604087013591508082111561245e57600080fd5b61246a8883890161200b565b9350606087013591508082111561248057600080fd5b5061238087828801612076565b600080604083850312156124a057600080fd5b6124a983611e2e565b91506124b760208401611e2e565b90509250929050565b600080604083850312156124d357600080fd5b50508035926020909101359150565b600080600080600060a086880312156124fa57600080fd5b61250386611e2e565b945061251160208701611e2e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561253b57600080fd5b6121a188828901612076565b600181811c9082168061255b57607f821691505b602082108103612594577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516125ac818560208601611ecf565b9290920192915050565b600080845481600182811c9150808316806125d257607f831692505b6020808410820361260a577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561261e57600181146126515761267e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008616895284151585028901965061267e565b60008b81526020902060005b868110156126765781548b82015290850190830161265d565b505084890196505b5050505050506126ba612691828661259a565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610381576103816126f2565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612765576127656126f2565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826127aa576127aa61276c565b500490565b6000826127be576127be61276c565b500690565b8082028115828204841417610381576103816126f2565b60ff8181168382160190811115610381576103816126f2565b60408152600061280660408301856122a1565b82810360208401526126ba81856122a1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261285160a08301866122a1565b828103606084015261286381866122a1565b905082810360808401526128778185611ef3565b98975050505050505050565b60006020828403121561289557600080fd5b8151611da081611e81565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526128e560a0830184611ef3565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b80820180821115610381576103816126f2565b600181815b8085111561298b57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612971576129716126f2565b8085161561297e57918102915b93841c9390800290612937565b509250929050565b6000826129a257506001610381565b816129af57506000610381565b81600181146129c557600281146129cf576129eb565b6001915050610381565b60ff8411156129e0576129e06126f2565b50506001821b610381565b5060208310610133831016604e8410600b8410161715612a0e575081810a610381565b612a188383612932565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612a4a57612a4a6126f2565b029392505050565b6000611da0838361299356fea2646970667358221220892dcdbd4e694beefeb475e8bd5b4daf66d1daf3b0c853d3fb8ca4002e1bd0ee64736f6c63430008120033", + "bytecode": "0x60806040523480156200001157600080fd5b5060405162002e0738038062002e07833981016040819052620000349162000142565b818160036200004483826200023c565b5060026200005382826200023c565b505050505062000363565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008657600080fd5b815167ffffffffffffffff80821115620000a457620000a46200005e565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000ed57620000ed6200005e565b816040528381526020925086838588010111156200010a57600080fd5b600091505b838210156200012e57858201830151818301840152908201906200010f565b600093810190920192909252949350505050565b600080604083850312156200015657600080fd5b825167ffffffffffffffff808211156200016f57600080fd5b6200017d8683870162000074565b935060208501519150808211156200019457600080fd5b50620001a38582860162000074565b9150509250929050565b600181811c90821680620001c257607f821691505b602082108103620001e357634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023757600081815260208120601f850160051c81016020861015620002125750805b601f850160051c820191505b8181101562000233578281556001016200021e565b5050505b505050565b815167ffffffffffffffff8111156200025957620002596200005e565b62000271816200026a8454620001ad565b84620001e9565b602080601f831160018114620002c75760008415620002905750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000233565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031657888601518255948401946001909101908401620002f5565b50858210156200035357878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b612a9480620003736000396000f3fe608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063a22cb46511610097578063db90e83c11610066578063db90e83c14610299578063e985e9c5146102c1578063eaec5f811461030a578063f242432a1461031d576100ff565b8063a22cb4651461024d578063a3f091f514610260578063bd7a6c4114610273578063d7a0ad9014610286576100ff565b80632eb2c2d6116100d35780632eb2c2d6146101fd578063437ecbe9146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611e57565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611eb2565b610387565b60405190151581526020016101a9565b6101dd610392565b6040516101a99190611f3d565b6101dd6101f8366004611f50565b610420565b61021061020b366004612104565b610454565b005b6102106102203660046121ae565b6105f8565b6102386102333660046121e1565b610608565b6040516101a991906122dc565b6101dd610902565b61021061025b3660046122ef565b61090f565b61021061026e36600461232b565b6109a6565b61021061028136600461238c565b6109b8565b610210610294366004612400565b6109c3565b6102ac6102a7366004611f50565b6109cf565b604080519283526020830191909152016101a9565b6101c56102cf36600461248d565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61019f6103183660046124c0565b610a09565b61021061032b3660046124e2565b610a37565b600080600061033e846109cf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061037c9082610a09565b925050505b92915050565b600061038182610bd4565b6003805461039f90612547565b80601f01602080910402602001604051908101604052809291908181526020018280546103cb90612547565b80156104185780601f106103ed57610100808354040283529160200191610418565b820191906000526020600020905b8154815290600101906020018083116103fb57829003601f168201915b505050505081565b6060600261042d83610c30565b60405160200161043e9291906125b6565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806104a8575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f52000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610183565b6105e385858585610d90565b6105f1858585855a866111f3565b5050505050565b6106038383836113a2565b505050565b8151815160609190811461069e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610183565b6000806106c4856000815181106106b7576106b76126c3565b60200260200101516109cf565b915091506000806000886000815181106106e0576106e06126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561075657610756611f69565b60405190808252806020026020018201604052801561077f578160200160208202803683370190505b50905061078c8385610a09565b8160008151811061079f5761079f6126c3565b602090810291909101015260015b868110156108f5576107ca8982815181106106b7576106b76126c3565b9096509450828614158061084857508981815181106107eb576107eb6126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a6001836108179190612721565b81518110610827576108276126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156108bc576000808b8381518110610862576108626126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6108c68486610a09565b8282815181106108d8576108d86126c3565b6020908102919091010152806108ed81612734565b9150506107ad565b5098975050505050505050565b6002805461039f90612547565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6109b28484848461140a565b50505050565b61060383838361147c565b6109b2848484846115f0565b6000806109df602061010061279b565b6109e9908461279b565b91506109f8602061010061279b565b610a0290846127af565b9050915091565b600080610a1c6001640100000000612721565b90506000610a2b8460206127c3565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610a8b575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610bba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610183565b610bc685858585611851565b6105f1858585855a866118c0565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610c2757506001919050565b61038182611a65565b606081600003610c7357505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610c9d5780610c8781612734565b9150610c969050600a8361279b565b9150610c77565b60008167ffffffffffffffff811115610cb857610cb8611f69565b6040519080825280601f01601f191660200182016040528015610ce2576020820181803683370190505b509050815b8515610d8757610cf8600182612721565b90506000610d07600a8861279b565b610d1290600a6127c3565b610d1c9088612721565b610d279060306127da565b905060008160f81b905080848481518110610d4457610d446126c3565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610d7e600a8961279b565b97505050610ce7565b50949350505050565b815181518114610e48576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610183565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610e845750600081115b1561108457600080610ea2856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610f009190849088908590610ef157610ef16126c3565b60200260200101516001611b02565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610f5c9190859089908590610f4d57610f4d6126c3565b60200260200101516000611b02565b90508360015b8681101561103257610f7f8982815181106106b7576106b76126c3565b9096509450818614610fee5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b61100584868a8481518110610ef157610ef16126c3565b935061101e83868a8481518110610f4d57610f4d6126c3565b92508061102a81612734565b915050610f62565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a1681528082528381209581529490529220919091555061116e565b60005b8181101561116c578281815181106110a1576110a16126c3565b60200260200101516110cc878684815181106110bf576110bf6126c3565b6020026020010151610330565b101561115a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610183565b8061116481612734565b915050611087565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111e49291906127f3565b60405180910390a45050505050565b6112128573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161125b959493929190612818565b60206040518083038160008887f115801561127a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061129f9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610183565b505b505050505050565b6113af8383836001611da7565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6114178484846000611da7565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46109b260008585855a866118c0565b81518151811461150e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e4754480000006064820152608401610183565b60005b8181101561156a576115588585838151811061152f5761152f6126c3565b6020026020010151858481518110611549576115496126c3565b60200260200101516001611da7565b8061156281612734565b915050611511565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516115e29291906127f3565b60405180910390a450505050565b8151835114611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e47544800006064820152608401610183565b8251156117c3576000806116a1856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091528120548751939550919350916116f09190849088908590610f4d57610f4d6126c3565b86519091508360015b8281101561178a576117168982815181106106b7576106b76126c3565b909650945081861461175f5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b61177684868a8481518110610f4d57610f4d6126c3565b93508061178281612734565b9150506116f9565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161183a9291906127f3565b60405180910390a46109b260008585855a866111f3565b61185e8483836001611da7565b61186b8383836000611da7565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016115e2565b6118df8573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016119289594939291906128a0565b60206040518083038160008887f1158015611947573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061196c9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611ab857506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610381565b600080611b108560206127c3565b90506000611b246001640100000000612721565b90506000846001811115611b3a57611b3a6128f0565b03611bf957611b4b85831b8861291f565b9250611b5960206002612a52565b611b678689851c841661291f565b10611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610183565b611d63565b6001846001811115611c0d57611c0d6128f0565b03611cb557611c1e85831b88612721565b925084818389901c161015611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610183565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610183565b5050949350505050565b6000813f8015801590611da057507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b600080611db3856109cf565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150611df390828686611b02565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611e5257600080fd5b919050565b60008060408385031215611e6a57600080fd5b611e7383611e2e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611eaf57600080fd5b50565b600060208284031215611ec457600080fd5b8135611da081611e81565b60005b83811015611eea578181015183820152602001611ed2565b50506000910152565b60008151808452611f0b816020860160208601611ecf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611da06020830184611ef3565b600060208284031215611f6257600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611fdf57611fdf611f69565b604052919050565b600067ffffffffffffffff82111561200157612001611f69565b5060051b60200190565b600082601f83011261201c57600080fd5b8135602061203161202c83611fe7565b611f98565b82815260059290921b8401810191818101908684111561205057600080fd5b8286015b8481101561206b5780358352918301918301612054565b509695505050505050565b600082601f83011261208757600080fd5b813567ffffffffffffffff8111156120a1576120a1611f69565b6120d260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611f98565b8181528460208386010111156120e757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561211c57600080fd5b61212586611e2e565b945061213360208701611e2e565b9350604086013567ffffffffffffffff8082111561215057600080fd5b61215c89838a0161200b565b9450606088013591508082111561217257600080fd5b61217e89838a0161200b565b9350608088013591508082111561219457600080fd5b506121a188828901612076565b9150509295509295909350565b6000806000606084860312156121c357600080fd5b6121cc84611e2e565b95602085013595506040909401359392505050565b600080604083850312156121f457600080fd5b823567ffffffffffffffff8082111561220c57600080fd5b818501915085601f83011261222057600080fd5b8135602061223061202c83611fe7565b82815260059290921b8401810191818101908984111561224f57600080fd5b948201945b838610156122745761226586611e2e565b82529482019490820190612254565b9650508601359250508082111561228a57600080fd5b506122978582860161200b565b9150509250929050565b600081518084526020808501945080840160005b838110156122d1578151875295820195908201906001016122b5565b509495945050505050565b602081526000611da060208301846122a1565b6000806040838503121561230257600080fd5b61230b83611e2e565b91506020830135801515811461232057600080fd5b809150509250929050565b6000806000806080858703121561234157600080fd5b61234a85611e2e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561237457600080fd5b61238087828801612076565b91505092959194509250565b6000806000606084860312156123a157600080fd5b6123aa84611e2e565b9250602084013567ffffffffffffffff808211156123c757600080fd5b6123d38783880161200b565b935060408601359150808211156123e957600080fd5b506123f68682870161200b565b9150509250925092565b6000806000806080858703121561241657600080fd5b61241f85611e2e565b9350602085013567ffffffffffffffff8082111561243c57600080fd5b6124488883890161200b565b9450604087013591508082111561245e57600080fd5b61246a8883890161200b565b9350606087013591508082111561248057600080fd5b5061238087828801612076565b600080604083850312156124a057600080fd5b6124a983611e2e565b91506124b760208401611e2e565b90509250929050565b600080604083850312156124d357600080fd5b50508035926020909101359150565b600080600080600060a086880312156124fa57600080fd5b61250386611e2e565b945061251160208701611e2e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561253b57600080fd5b6121a188828901612076565b600181811c9082168061255b57607f821691505b602082108103612594577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516125ac818560208601611ecf565b9290920192915050565b600080845481600182811c9150808316806125d257607f831692505b6020808410820361260a577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561261e57600181146126515761267e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008616895284151585028901965061267e565b60008b81526020902060005b868110156126765781548b82015290850190830161265d565b505084890196505b5050505050506126ba612691828661259a565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610381576103816126f2565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612765576127656126f2565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826127aa576127aa61276c565b500490565b6000826127be576127be61276c565b500690565b8082028115828204841417610381576103816126f2565b60ff8181168382160190811115610381576103816126f2565b60408152600061280660408301856122a1565b82810360208401526126ba81856122a1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261285160a08301866122a1565b828103606084015261286381866122a1565b905082810360808401526128778185611ef3565b98975050505050505050565b60006020828403121561289557600080fd5b8151611da081611e81565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526128e560a0830184611ef3565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b80820180821115610381576103816126f2565b600181815b8085111561298b57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612971576129716126f2565b8085161561297e57918102915b93841c9390800290612937565b509250929050565b6000826129a257506001610381565b816129af57506000610381565b81600181146129c557600281146129cf576129eb565b6001915050610381565b60ff8411156129e0576129e06126f2565b50506001821b610381565b5060208310610133831016604e8410600b8410161715612a0e575081810a610381565b612a188383612932565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612a4a57612a4a6126f2565b029392505050565b6000611da0838361299356fea2646970667358221220ae55465b05a3ae46942cf28f993cfffb17bbdcf273cc5094adf299e83c63761e64736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ff5760003560e01c8063a22cb46511610097578063db90e83c11610066578063db90e83c14610299578063e985e9c5146102c1578063eaec5f811461030a578063f242432a1461031d576100ff565b8063a22cb4651461024d578063a3f091f514610260578063bd7a6c4114610273578063d7a0ad9014610286576100ff565b80632eb2c2d6116100d35780632eb2c2d6146101fd578063437ecbe9146102125780634e1273f4146102255780636c0360eb14610245576100ff565b8062fdd58e1461018c57806301ffc9a7146101b257806306fdde03146101d55780630e89341c146101ea575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603460248201527f455243313135354d6574614d696e744275726e5061636b656442616c616e636560448201527f4d6f636b3a20494e56414c49445f4d4554484f4400000000000000000000000060648201526084015b60405180910390fd5b61019f61019a366004611e57565b610330565b6040519081526020015b60405180910390f35b6101c56101c0366004611eb2565b610387565b60405190151581526020016101a9565b6101dd610392565b6040516101a99190611f3d565b6101dd6101f8366004611f50565b610420565b61021061020b366004612104565b610454565b005b6102106102203660046121ae565b6105f8565b6102386102333660046121e1565b610608565b6040516101a991906122dc565b6101dd610902565b61021061025b3660046122ef565b61090f565b61021061026e36600461232b565b6109a6565b61021061028136600461238c565b6109b8565b610210610294366004612400565b6109c3565b6102ac6102a7366004611f50565b6109cf565b604080519283526020830191909152016101a9565b6101c56102cf36600461248d565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61019f6103183660046124c0565b610a09565b61021061032b3660046124e2565b610a37565b600080600061033e846109cf565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061037c9082610a09565b925050505b92915050565b600061038182610bd4565b6003805461039f90612547565b80601f01602080910402602001604051908101604052809291908181526020018280546103cb90612547565b80156104185780601f106103ed57610100808354040283529160200191610418565b820191906000526020600020905b8154815290600101906020018083116103fb57829003601f168201915b505050505081565b6060600261042d83610c30565b60405160200161043e9291906125b6565b6040516020818303038152906040529050919050565b3373ffffffffffffffffffffffffffffffffffffffff861614806104a8575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610534576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f52000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff84166105d7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610183565b6105e385858585610d90565b6105f1858585855a866111f3565b5050505050565b6106038383836113a2565b505050565b8151815160609190811461069e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610183565b6000806106c4856000815181106106b7576106b76126c3565b60200260200101516109cf565b915091506000806000886000815181106106e0576106e06126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561075657610756611f69565b60405190808252806020026020018201604052801561077f578160200160208202803683370190505b50905061078c8385610a09565b8160008151811061079f5761079f6126c3565b602090810291909101015260015b868110156108f5576107ca8982815181106106b7576106b76126c3565b9096509450828614158061084857508981815181106107eb576107eb6126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a6001836108179190612721565b81518110610827576108276126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156108bc576000808b8381518110610862576108626126c3565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6108c68486610a09565b8282815181106108d8576108d86126c3565b6020908102919091010152806108ed81612734565b9150506107ad565b5098975050505050505050565b6002805461039f90612547565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6109b28484848461140a565b50505050565b61060383838361147c565b6109b2848484846115f0565b6000806109df602061010061279b565b6109e9908461279b565b91506109f8602061010061279b565b610a0290846127af565b9050915091565b600080610a1c6001640100000000612721565b90506000610a2b8460206127c3565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610a8b575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b17576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610183565b73ffffffffffffffffffffffffffffffffffffffff8416610bba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610183565b610bc685858585611851565b6105f1858585855a866118c0565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610c2757506001919050565b61038182611a65565b606081600003610c7357505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610c9d5780610c8781612734565b9150610c969050600a8361279b565b9150610c77565b60008167ffffffffffffffff811115610cb857610cb8611f69565b6040519080825280601f01601f191660200182016040528015610ce2576020820181803683370190505b509050815b8515610d8757610cf8600182612721565b90506000610d07600a8861279b565b610d1290600a6127c3565b610d1c9088612721565b610d279060306127da565b905060008160f81b905080848481518110610d4457610d446126c3565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610d7e600a8961279b565b97505050610ce7565b50949350505050565b815181518114610e48576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610183565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610e845750600081115b1561108457600080610ea2856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610f009190849088908590610ef157610ef16126c3565b60200260200101516001611b02565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610f5c9190859089908590610f4d57610f4d6126c3565b60200260200101516000611b02565b90508360015b8681101561103257610f7f8982815181106106b7576106b76126c3565b9096509450818614610fee5773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b61100584868a8481518110610ef157610ef16126c3565b935061101e83868a8481518110610f4d57610f4d6126c3565b92508061102a81612734565b915050610f62565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a1681528082528381209581529490529220919091555061116e565b60005b8181101561116c578281815181106110a1576110a16126c3565b60200260200101516110cc878684815181106110bf576110bf6126c3565b6020026020010151610330565b101561115a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610183565b8061116481612734565b915050611087565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516111e49291906127f3565b60405180910390a45050505050565b6112128573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b815260040161125b959493929190612818565b60206040518083038160008887f115801561127a573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061129f9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610183565b505b505050505050565b6113af8383836001611da7565b604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b6114178484846000611da7565b604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46109b260008585855a866118c0565b81518151811461150e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135354d696e744275726e5061636b656442616c616e63652362617460448201527f63684275726e3a20494e56414c49445f4152524159535f4c454e4754480000006064820152608401610183565b60005b8181101561156a576115588585838151811061152f5761152f6126c3565b6020026020010151858481518110611549576115496126c3565b60200260200101516001611da7565b8061156281612734565b915050611511565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516115e29291906127f3565b60405180910390a450505050565b8151835114611681576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f455243313135354d696e744275726e5061636b656442616c616e6365235f626160448201527f7463684d696e743a20494e56414c49445f4152524159535f4c454e47544800006064820152608401610183565b8251156117c3576000806116a1856000815181106106b7576106b76126c3565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091528120548751939550919350916116f09190849088908590610f4d57610f4d6126c3565b86519091508360015b8281101561178a576117168982815181106106b7576106b76126c3565b909650945081861461175f5773ffffffffffffffffffffffffffffffffffffffff8a16600090815260208181526040808320948352939052828120949094558584529220549184905b61177684868a8481518110610f4d57610f4d6126c3565b93508061178281612734565b9150506116f9565b50505073ffffffffffffffffffffffffffffffffffffffff87166000908152602081815260408083209583529490529290922091909155505b8373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161183a9291906127f3565b60405180910390a46109b260008585855a866111f3565b61185e8483836001611da7565b61186b8383836000611da7565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016115e2565b6118df8573ffffffffffffffffffffffffffffffffffffffff16611d6d565b1561139a5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016119289594939291906128a0565b60206040518083038160008887f1158015611947573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061196c9190612883565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611398576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610183565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611ab857506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610381565b600080611b108560206127c3565b90506000611b246001640100000000612721565b90506000846001811115611b3a57611b3a6128f0565b03611bf957611b4b85831b8861291f565b9250611b5960206002612a52565b611b678689851c841661291f565b10611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610183565b611d63565b6001846001811115611c0d57611c0d6128f0565b03611cb557611c1e85831b88612721565b925084818389901c161015611bf4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610183565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610183565b5050949350505050565b6000813f8015801590611da057507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b600080611db3856109cf565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150611df390828686611b02565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114611e5257600080fd5b919050565b60008060408385031215611e6a57600080fd5b611e7383611e2e565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611eaf57600080fd5b50565b600060208284031215611ec457600080fd5b8135611da081611e81565b60005b83811015611eea578181015183820152602001611ed2565b50506000910152565b60008151808452611f0b816020860160208601611ecf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b602081526000611da06020830184611ef3565b600060208284031215611f6257600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611fdf57611fdf611f69565b604052919050565b600067ffffffffffffffff82111561200157612001611f69565b5060051b60200190565b600082601f83011261201c57600080fd5b8135602061203161202c83611fe7565b611f98565b82815260059290921b8401810191818101908684111561205057600080fd5b8286015b8481101561206b5780358352918301918301612054565b509695505050505050565b600082601f83011261208757600080fd5b813567ffffffffffffffff8111156120a1576120a1611f69565b6120d260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611f98565b8181528460208386010111156120e757600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561211c57600080fd5b61212586611e2e565b945061213360208701611e2e565b9350604086013567ffffffffffffffff8082111561215057600080fd5b61215c89838a0161200b565b9450606088013591508082111561217257600080fd5b61217e89838a0161200b565b9350608088013591508082111561219457600080fd5b506121a188828901612076565b9150509295509295909350565b6000806000606084860312156121c357600080fd5b6121cc84611e2e565b95602085013595506040909401359392505050565b600080604083850312156121f457600080fd5b823567ffffffffffffffff8082111561220c57600080fd5b818501915085601f83011261222057600080fd5b8135602061223061202c83611fe7565b82815260059290921b8401810191818101908984111561224f57600080fd5b948201945b838610156122745761226586611e2e565b82529482019490820190612254565b9650508601359250508082111561228a57600080fd5b506122978582860161200b565b9150509250929050565b600081518084526020808501945080840160005b838110156122d1578151875295820195908201906001016122b5565b509495945050505050565b602081526000611da060208301846122a1565b6000806040838503121561230257600080fd5b61230b83611e2e565b91506020830135801515811461232057600080fd5b809150509250929050565b6000806000806080858703121561234157600080fd5b61234a85611e2e565b93506020850135925060408501359150606085013567ffffffffffffffff81111561237457600080fd5b61238087828801612076565b91505092959194509250565b6000806000606084860312156123a157600080fd5b6123aa84611e2e565b9250602084013567ffffffffffffffff808211156123c757600080fd5b6123d38783880161200b565b935060408601359150808211156123e957600080fd5b506123f68682870161200b565b9150509250925092565b6000806000806080858703121561241657600080fd5b61241f85611e2e565b9350602085013567ffffffffffffffff8082111561243c57600080fd5b6124488883890161200b565b9450604087013591508082111561245e57600080fd5b61246a8883890161200b565b9350606087013591508082111561248057600080fd5b5061238087828801612076565b600080604083850312156124a057600080fd5b6124a983611e2e565b91506124b760208401611e2e565b90509250929050565b600080604083850312156124d357600080fd5b50508035926020909101359150565b600080600080600060a086880312156124fa57600080fd5b61250386611e2e565b945061251160208701611e2e565b93506040860135925060608601359150608086013567ffffffffffffffff81111561253b57600080fd5b6121a188828901612076565b600181811c9082168061255b57607f821691505b602082108103612594577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516125ac818560208601611ecf565b9290920192915050565b600080845481600182811c9150808316806125d257607f831692505b6020808410820361260a577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b81801561261e57600181146126515761267e565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff008616895284151585028901965061267e565b60008b81526020902060005b868110156126765781548b82015290850190830161265d565b505084890196505b5050505050506126ba612691828661259a565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610381576103816126f2565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612765576127656126f2565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826127aa576127aa61276c565b500490565b6000826127be576127be61276c565b500690565b8082028115828204841417610381576103816126f2565b60ff8181168382160190811115610381576103816126f2565b60408152600061280660408301856122a1565b82810360208401526126ba81856122a1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261285160a08301866122a1565b828103606084015261286381866122a1565b905082810360808401526128778185611ef3565b98975050505050505050565b60006020828403121561289557600080fd5b8151611da081611e81565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a060808301526128e560a0830184611ef3565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b80820180821115610381576103816126f2565b600181815b8085111561298b57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612971576129716126f2565b8085161561297e57918102915b93841c9390800290612937565b509250929050565b6000826129a257506001610381565b816129af57506000610381565b81600181146129c557600281146129cf576129eb565b6001915050610381565b60ff8411156129e0576129e06126f2565b50506001821b610381565b5060208310610133831016604e8410600b8410161715612a0e575081810a610381565b612a188383612932565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115612a4a57612a4a6126f2565b029392505050565b6000611da0838361299356fea2646970667358221220ae55465b05a3ae46942cf28f993cfffb17bbdcf273cc5094adf299e83c63761e64736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC1155OperatorMock.sol/ERC1155OperatorMock.json b/src/artifacts/contracts/mocks/ERC1155OperatorMock.sol/ERC1155OperatorMock.json index 630a03e..162d60c 100644 --- a/src/artifacts/contracts/mocks/ERC1155OperatorMock.sol/ERC1155OperatorMock.json +++ b/src/artifacts/contracts/mocks/ERC1155OperatorMock.sol/ERC1155OperatorMock.json @@ -204,8 +204,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50610a4e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063e7e4f05211610050578063e7e4f05214610094578063eb46c45b146100a7578063f06978b7146100ba57600080fd5b80637ee7f69b1461006c57806387fd22fc14610081575b600080fd5b61007f61007a3660046104bd565b6100cd565b005b61007f61008f366004610586565b610161565b61007f6100a2366004610619565b6101f8565b61007f6100b53660046106d5565b610254565b61007f6100c8366004610749565b6102ae565b6040517f2eb2c2d600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871690632eb2c2d690610127908890889088908890889060040161085e565b600060405180830381600087803b15801561014157600080fd5b505af1158015610155573d6000803e3d6000fd5b50505050505050505050565b6040517fce0b514b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063ce0b514b906101bd908990899089908990899089906004016108c9565b600060405180830381600087803b1580156101d757600080fd5b505af11580156101eb573d6000803e3d6000fd5b5050505050505050505050565b6040517fa3d4926e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063a3d4926e906101bd90899089908990899089908990600401610916565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f242432a90610127908890889088908890889060040161098a565b6040517ff5d4c82000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f5d4c8209061012790889088908890889088906004016109cf565b803573ffffffffffffffffffffffffffffffffffffffff8116811461032c57600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156103a7576103a7610331565b604052919050565b600082601f8301126103c057600080fd5b8135602067ffffffffffffffff8211156103dc576103dc610331565b8160051b6103eb828201610360565b928352848101820192828101908785111561040557600080fd5b83870192505b848310156104245782358252918301919083019061040b565b979650505050505050565b600082601f83011261044057600080fd5b813567ffffffffffffffff81111561045a5761045a610331565b61048b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610360565b8181528460208386010111156104a057600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c087890312156104d657600080fd5b6104df87610308565b95506104ed60208801610308565b94506104fb60408801610308565b9350606087013567ffffffffffffffff8082111561051857600080fd5b6105248a838b016103af565b9450608089013591508082111561053a57600080fd5b6105468a838b016103af565b935060a089013591508082111561055c57600080fd5b5061056989828a0161042f565b9150509295509295509295565b8035801515811461032c57600080fd5b600080600080600080600060e0888a0312156105a157600080fd5b6105aa88610308565b96506105b860208901610308565b95506105c660408901610308565b945060608801359350608088013592506105e260a08901610576565b915060c088013567ffffffffffffffff8111156105fe57600080fd5b61060a8a828b0161042f565b91505092959891949750929550565b600080600080600080600060e0888a03121561063457600080fd5b61063d88610308565b965061064b60208901610308565b955061065960408901610308565b9450606088013567ffffffffffffffff8082111561067657600080fd5b6106828b838c016103af565b955060808a013591508082111561069857600080fd5b6106a48b838c016103af565b94506106b260a08b01610576565b935060c08a01359150808211156106c857600080fd5b5061060a8a828b0161042f565b60008060008060008060c087890312156106ee57600080fd5b6106f787610308565b955061070560208801610308565b945061071360408801610308565b9350606087013592506080870135915060a087013567ffffffffffffffff81111561073d57600080fd5b61056989828a0161042f565b60008060008060008060c0878903121561076257600080fd5b61076b87610308565b955061077960208801610308565b945061078760408801610308565b935061079560608801610576565b92506107a360808801610576565b915060a087013567ffffffffffffffff81111561073d57600080fd5b600081518084526020808501945080840160005b838110156107ef578151875295820195908201906001016107d3565b509495945050505050565b6000815180845260005b8181101561082057602081850181015186830182015201610804565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261089760a08301866107bf565b82810360608401526108a981866107bf565b905082810360808401526108bd81856107fa565b98975050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff8089168352808816602084015250856040830152846060830152831515608083015260c060a08301526108bd60c08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff808916835280881660208401525060c0604083015261094f60c08301876107bf565b828103606084015261096181876107bf565b9050841515608084015282810360a084015261097d81856107fa565b9998505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261042460a08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff80881683528087166020840152508415156040830152831515606083015260a0608083015261042460a08301846107fa56fea2646970667358221220bcae46749f04d09bd950ee0d2c027787c732cdc3e88f6c112ea2d4b1d04f5fc564736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063e7e4f05211610050578063e7e4f05214610094578063eb46c45b146100a7578063f06978b7146100ba57600080fd5b80637ee7f69b1461006c57806387fd22fc14610081575b600080fd5b61007f61007a3660046104bd565b6100cd565b005b61007f61008f366004610586565b610161565b61007f6100a2366004610619565b6101f8565b61007f6100b53660046106d5565b610254565b61007f6100c8366004610749565b6102ae565b6040517f2eb2c2d600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871690632eb2c2d690610127908890889088908890889060040161085e565b600060405180830381600087803b15801561014157600080fd5b505af1158015610155573d6000803e3d6000fd5b50505050505050505050565b6040517fce0b514b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063ce0b514b906101bd908990899089908990899089906004016108c9565b600060405180830381600087803b1580156101d757600080fd5b505af11580156101eb573d6000803e3d6000fd5b5050505050505050505050565b6040517fa3d4926e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063a3d4926e906101bd90899089908990899089908990600401610916565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f242432a90610127908890889088908890889060040161098a565b6040517ff5d4c82000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f5d4c8209061012790889088908890889088906004016109cf565b803573ffffffffffffffffffffffffffffffffffffffff8116811461032c57600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156103a7576103a7610331565b604052919050565b600082601f8301126103c057600080fd5b8135602067ffffffffffffffff8211156103dc576103dc610331565b8160051b6103eb828201610360565b928352848101820192828101908785111561040557600080fd5b83870192505b848310156104245782358252918301919083019061040b565b979650505050505050565b600082601f83011261044057600080fd5b813567ffffffffffffffff81111561045a5761045a610331565b61048b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610360565b8181528460208386010111156104a057600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c087890312156104d657600080fd5b6104df87610308565b95506104ed60208801610308565b94506104fb60408801610308565b9350606087013567ffffffffffffffff8082111561051857600080fd5b6105248a838b016103af565b9450608089013591508082111561053a57600080fd5b6105468a838b016103af565b935060a089013591508082111561055c57600080fd5b5061056989828a0161042f565b9150509295509295509295565b8035801515811461032c57600080fd5b600080600080600080600060e0888a0312156105a157600080fd5b6105aa88610308565b96506105b860208901610308565b95506105c660408901610308565b945060608801359350608088013592506105e260a08901610576565b915060c088013567ffffffffffffffff8111156105fe57600080fd5b61060a8a828b0161042f565b91505092959891949750929550565b600080600080600080600060e0888a03121561063457600080fd5b61063d88610308565b965061064b60208901610308565b955061065960408901610308565b9450606088013567ffffffffffffffff8082111561067657600080fd5b6106828b838c016103af565b955060808a013591508082111561069857600080fd5b6106a48b838c016103af565b94506106b260a08b01610576565b935060c08a01359150808211156106c857600080fd5b5061060a8a828b0161042f565b60008060008060008060c087890312156106ee57600080fd5b6106f787610308565b955061070560208801610308565b945061071360408801610308565b9350606087013592506080870135915060a087013567ffffffffffffffff81111561073d57600080fd5b61056989828a0161042f565b60008060008060008060c0878903121561076257600080fd5b61076b87610308565b955061077960208801610308565b945061078760408801610308565b935061079560608801610576565b92506107a360808801610576565b915060a087013567ffffffffffffffff81111561073d57600080fd5b600081518084526020808501945080840160005b838110156107ef578151875295820195908201906001016107d3565b509495945050505050565b6000815180845260005b8181101561082057602081850181015186830182015201610804565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261089760a08301866107bf565b82810360608401526108a981866107bf565b905082810360808401526108bd81856107fa565b98975050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff8089168352808816602084015250856040830152846060830152831515608083015260c060a08301526108bd60c08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff808916835280881660208401525060c0604083015261094f60c08301876107bf565b828103606084015261096181876107bf565b9050841515608084015282810360a084015261097d81856107fa565b9998505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261042460a08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff80881683528087166020840152508415156040830152831515606083015260a0608083015261042460a08301846107fa56fea2646970667358221220bcae46749f04d09bd950ee0d2c027787c732cdc3e88f6c112ea2d4b1d04f5fc564736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b50610a4e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100675760003560e01c8063e7e4f05211610050578063e7e4f05214610094578063eb46c45b146100a7578063f06978b7146100ba57600080fd5b80637ee7f69b1461006c57806387fd22fc14610081575b600080fd5b61007f61007a3660046104bd565b6100cd565b005b61007f61008f366004610586565b610161565b61007f6100a2366004610619565b6101f8565b61007f6100b53660046106d5565b610254565b61007f6100c8366004610749565b6102ae565b6040517f2eb2c2d600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871690632eb2c2d690610127908890889088908890889060040161085e565b600060405180830381600087803b15801561014157600080fd5b505af1158015610155573d6000803e3d6000fd5b50505050505050505050565b6040517fce0b514b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063ce0b514b906101bd908990899089908990899089906004016108c9565b600060405180830381600087803b1580156101d757600080fd5b505af11580156101eb573d6000803e3d6000fd5b5050505050505050505050565b6040517fa3d4926e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063a3d4926e906101bd90899089908990899089908990600401610916565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f242432a90610127908890889088908890889060040161098a565b6040517ff5d4c82000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f5d4c8209061012790889088908890889088906004016109cf565b803573ffffffffffffffffffffffffffffffffffffffff8116811461032c57600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156103a7576103a7610331565b604052919050565b600082601f8301126103c057600080fd5b8135602067ffffffffffffffff8211156103dc576103dc610331565b8160051b6103eb828201610360565b928352848101820192828101908785111561040557600080fd5b83870192505b848310156104245782358252918301919083019061040b565b979650505050505050565b600082601f83011261044057600080fd5b813567ffffffffffffffff81111561045a5761045a610331565b61048b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610360565b8181528460208386010111156104a057600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c087890312156104d657600080fd5b6104df87610308565b95506104ed60208801610308565b94506104fb60408801610308565b9350606087013567ffffffffffffffff8082111561051857600080fd5b6105248a838b016103af565b9450608089013591508082111561053a57600080fd5b6105468a838b016103af565b935060a089013591508082111561055c57600080fd5b5061056989828a0161042f565b9150509295509295509295565b8035801515811461032c57600080fd5b600080600080600080600060e0888a0312156105a157600080fd5b6105aa88610308565b96506105b860208901610308565b95506105c660408901610308565b945060608801359350608088013592506105e260a08901610576565b915060c088013567ffffffffffffffff8111156105fe57600080fd5b61060a8a828b0161042f565b91505092959891949750929550565b600080600080600080600060e0888a03121561063457600080fd5b61063d88610308565b965061064b60208901610308565b955061065960408901610308565b9450606088013567ffffffffffffffff8082111561067657600080fd5b6106828b838c016103af565b955060808a013591508082111561069857600080fd5b6106a48b838c016103af565b94506106b260a08b01610576565b935060c08a01359150808211156106c857600080fd5b5061060a8a828b0161042f565b60008060008060008060c087890312156106ee57600080fd5b6106f787610308565b955061070560208801610308565b945061071360408801610308565b9350606087013592506080870135915060a087013567ffffffffffffffff81111561073d57600080fd5b61056989828a0161042f565b60008060008060008060c0878903121561076257600080fd5b61076b87610308565b955061077960208801610308565b945061078760408801610308565b935061079560608801610576565b92506107a360808801610576565b915060a087013567ffffffffffffffff81111561073d57600080fd5b600081518084526020808501945080840160005b838110156107ef578151875295820195908201906001016107d3565b509495945050505050565b6000815180845260005b8181101561082057602081850181015186830182015201610804565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261089760a08301866107bf565b82810360608401526108a981866107bf565b905082810360808401526108bd81856107fa565b98975050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff8089168352808816602084015250856040830152846060830152831515608083015260c060a08301526108bd60c08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff808916835280881660208401525060c0604083015261094f60c08301876107bf565b828103606084015261096181876107bf565b9050841515608084015282810360a084015261097d81856107fa565b9998505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261042460a08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff80881683528087166020840152508415156040830152831515606083015260a0608083015261042460a08301846107fa56fea26469706673582212204702637dee61cf198d003822040fc048271e736386f329c9649097df0ec100b464736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100675760003560e01c8063e7e4f05211610050578063e7e4f05214610094578063eb46c45b146100a7578063f06978b7146100ba57600080fd5b80637ee7f69b1461006c57806387fd22fc14610081575b600080fd5b61007f61007a3660046104bd565b6100cd565b005b61007f61008f366004610586565b610161565b61007f6100a2366004610619565b6101f8565b61007f6100b53660046106d5565b610254565b61007f6100c8366004610749565b6102ae565b6040517f2eb2c2d600000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff871690632eb2c2d690610127908890889088908890889060040161085e565b600060405180830381600087803b15801561014157600080fd5b505af1158015610155573d6000803e3d6000fd5b50505050505050505050565b6040517fce0b514b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063ce0b514b906101bd908990899089908990899089906004016108c9565b600060405180830381600087803b1580156101d757600080fd5b505af11580156101eb573d6000803e3d6000fd5b5050505050505050505050565b6040517fa3d4926e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88169063a3d4926e906101bd90899089908990899089908990600401610916565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f242432a90610127908890889088908890889060040161098a565b6040517ff5d4c82000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87169063f5d4c8209061012790889088908890889088906004016109cf565b803573ffffffffffffffffffffffffffffffffffffffff8116811461032c57600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156103a7576103a7610331565b604052919050565b600082601f8301126103c057600080fd5b8135602067ffffffffffffffff8211156103dc576103dc610331565b8160051b6103eb828201610360565b928352848101820192828101908785111561040557600080fd5b83870192505b848310156104245782358252918301919083019061040b565b979650505050505050565b600082601f83011261044057600080fd5b813567ffffffffffffffff81111561045a5761045a610331565b61048b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610360565b8181528460208386010111156104a057600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c087890312156104d657600080fd5b6104df87610308565b95506104ed60208801610308565b94506104fb60408801610308565b9350606087013567ffffffffffffffff8082111561051857600080fd5b6105248a838b016103af565b9450608089013591508082111561053a57600080fd5b6105468a838b016103af565b935060a089013591508082111561055c57600080fd5b5061056989828a0161042f565b9150509295509295509295565b8035801515811461032c57600080fd5b600080600080600080600060e0888a0312156105a157600080fd5b6105aa88610308565b96506105b860208901610308565b95506105c660408901610308565b945060608801359350608088013592506105e260a08901610576565b915060c088013567ffffffffffffffff8111156105fe57600080fd5b61060a8a828b0161042f565b91505092959891949750929550565b600080600080600080600060e0888a03121561063457600080fd5b61063d88610308565b965061064b60208901610308565b955061065960408901610308565b9450606088013567ffffffffffffffff8082111561067657600080fd5b6106828b838c016103af565b955060808a013591508082111561069857600080fd5b6106a48b838c016103af565b94506106b260a08b01610576565b935060c08a01359150808211156106c857600080fd5b5061060a8a828b0161042f565b60008060008060008060c087890312156106ee57600080fd5b6106f787610308565b955061070560208801610308565b945061071360408801610308565b9350606087013592506080870135915060a087013567ffffffffffffffff81111561073d57600080fd5b61056989828a0161042f565b60008060008060008060c0878903121561076257600080fd5b61076b87610308565b955061077960208801610308565b945061078760408801610308565b935061079560608801610576565b92506107a360808801610576565b915060a087013567ffffffffffffffff81111561073d57600080fd5b600081518084526020808501945080840160005b838110156107ef578151875295820195908201906001016107d3565b509495945050505050565b6000815180845260005b8181101561082057602081850181015186830182015201610804565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261089760a08301866107bf565b82810360608401526108a981866107bf565b905082810360808401526108bd81856107fa565b98975050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff8089168352808816602084015250856040830152846060830152831515608083015260c060a08301526108bd60c08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff808916835280881660208401525060c0604083015261094f60c08301876107bf565b828103606084015261096181876107bf565b9050841515608084015282810360a084015261097d81856107fa565b9998505050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261042460a08301846107fa565b600073ffffffffffffffffffffffffffffffffffffffff80881683528087166020840152508415156040830152831515606083015260a0608083015261042460a08301846107fa56fea26469706673582212204702637dee61cf198d003822040fc048271e736386f329c9649097df0ec100b464736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC1155ReceiverMock.sol/ERC1155ReceiverMock.json b/src/artifacts/contracts/mocks/ERC1155ReceiverMock.sol/ERC1155ReceiverMock.json index fe2e8de..bcf5b9d 100644 --- a/src/artifacts/contracts/mocks/ERC1155ReceiverMock.sol/ERC1155ReceiverMock.json +++ b/src/artifacts/contracts/mocks/ERC1155ReceiverMock.sol/ERC1155ReceiverMock.json @@ -241,8 +241,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50611049806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c80636eb3cd4911610076578063bc197c811161005b578063bc197c8114610192578063c1292cc3146101d6578063f23a6e61146101df57600080fd5b80636eb3cd491461010c578063a175b6381461015157600080fd5b80626e75ec146100a757806301ffc9a7146100c55780631dbb9381146100e857806343183834146100f5575b600080fd5b6100af6101f2565b6040516100bc91906109eb565b60405180910390f35b6100d86100d3366004610a57565b610280565b60405190151581526020016100bc565b6000546100d89060ff1681565b6100fe60045481565b6040519081526020016100bc565b60025461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100bc565b61019061015f366004610aa0565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b005b6101a56101a0366004610c86565b610319565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016100bc565b6100fe60035481565b6101a56101ed366004610d30565b61072d565b600180546101ff90610d95565b80601f016020809104026020016040519081016040528092919081815260200182805461022b90610d95565b80156102785780601f1061024d57610100808354040283529160200191610278565b820191906000526020600020905b81548152906001019060200180831161025b57829003601f168201915b505050505081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061031357507f4e2312e0000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600080845167ffffffffffffffff81111561033657610336610aeb565b60405190808252806020026020018201604052801561035f578160200160208202803683370190505b5090506000855167ffffffffffffffff81111561037e5761037e610aeb565b6040519080825280602002602001820160405280156103a7578160200160208202803683370190505b50905060005b865181101561044d57878382815181106103c9576103c9610de8565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503082828151811061041657610416610de8565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061044581610e17565b9150506103ad565b506040517f4e1273f40000000000000000000000000000000000000000000000000000000081526000903390634e1273f49061048f9086908b90600401610eb1565b600060405180830381865afa1580156104ac573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526104f29190810190610f1e565b6040517f4e1273f40000000000000000000000000000000000000000000000000000000081529091506000903390634e1273f4906105369086908c90600401610eb1565b600060405180830381865afa158015610553573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526105999190810190610f1e565b90507f342e0fabcfd1ee833d876ecb1c45c3c2128e88b7cb5ba33cb71476504c75ac96893084846040516105d09493929190610faf565b60405180910390a18551156106bb576040517f48656c6c6f2066726f6d20746865206f746865722073696465000000000000006020820152603901604051602081830303815290604052805190602001208680519060200120146106bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084015b60405180910390fd5b60005460ff1615156001036106f757507fdeadbeef00000000000000000000000000000000000000000000000000000000935061072492505050565b507fbc197c8100000000000000000000000000000000000000000000000000000000935061072492505050565b95945050505050565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602481018490526000908190339062fdd58e90604401602060405180830381865afa1580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190610ffa565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815230600482015260248101879052909150600090339062fdd58e90604401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610ffa565b6040805173ffffffffffffffffffffffffffffffffffffffff8a168152306020820152908101849052606081018290529091507f35754fc132e57c492c060947310a879a2a3bc6d8360c268803988f6366a5ffa29060800160405180910390a1835115610986576040517f48656c6c6f2066726f6d20746865206f74686572207369646500000000000000602082015260390160405160208183030381529060405280519060200120848051906020012014610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084016106b2565b60005460ff1615156001036109c057507fdeadbeef0000000000000000000000000000000000000000000000000000000091506107249050565b507ff23a6e610000000000000000000000000000000000000000000000000000000091506107249050565b600060208083528351808285015260005b81811015610a18578581018301518582016040015282016109fc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600060208284031215610a6957600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610a9957600080fd5b9392505050565b600060208284031215610ab257600080fd5b81358015158114610a9957600080fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610ae657600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610b6157610b61610aeb565b604052919050565b600067ffffffffffffffff821115610b8357610b83610aeb565b5060051b60200190565b600082601f830112610b9e57600080fd5b81356020610bb3610bae83610b69565b610b1a565b82815260059290921b84018101918181019086841115610bd257600080fd5b8286015b84811015610bed5780358352918301918301610bd6565b509695505050505050565b600082601f830112610c0957600080fd5b813567ffffffffffffffff811115610c2357610c23610aeb565b610c5460207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610b1a565b818152846020838601011115610c6957600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610c9e57600080fd5b610ca786610ac2565b9450610cb560208701610ac2565b9350604086013567ffffffffffffffff80821115610cd257600080fd5b610cde89838a01610b8d565b94506060880135915080821115610cf457600080fd5b610d0089838a01610b8d565b93506080880135915080821115610d1657600080fd5b50610d2388828901610bf8565b9150509295509295909350565b600080600080600060a08688031215610d4857600080fd5b610d5186610ac2565b9450610d5f60208701610ac2565b93506040860135925060608601359150608086013567ffffffffffffffff811115610d8957600080fd5b610d2388828901610bf8565b600181811c90821680610da957607f821691505b602082108103610de2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e6f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b600081518084526020808501945080840160005b83811015610ea657815187529582019590820190600101610e8a565b509495945050505050565b604080825283519082018190526000906020906060840190828701845b82811015610f0057815173ffffffffffffffffffffffffffffffffffffffff1684529284019290840190600101610ece565b50505083810382850152610f148186610e76565b9695505050505050565b60006020808385031215610f3157600080fd5b825167ffffffffffffffff811115610f4857600080fd5b8301601f81018513610f5957600080fd5b8051610f67610bae82610b69565b81815260059190911b82018301908381019087831115610f8657600080fd5b928401925b82841015610fa457835182529284019290840190610f8b565b979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525060806040830152610fe86080830185610e76565b8281036060840152610fa48185610e76565b60006020828403121561100c57600080fd5b505191905056fea264697066735822122052e616f77f40428e17fab870862ee8e44cf55cab8bc91a155c593c524929473064736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a25760003560e01c80636eb3cd4911610076578063bc197c811161005b578063bc197c8114610192578063c1292cc3146101d6578063f23a6e61146101df57600080fd5b80636eb3cd491461010c578063a175b6381461015157600080fd5b80626e75ec146100a757806301ffc9a7146100c55780631dbb9381146100e857806343183834146100f5575b600080fd5b6100af6101f2565b6040516100bc91906109eb565b60405180910390f35b6100d86100d3366004610a57565b610280565b60405190151581526020016100bc565b6000546100d89060ff1681565b6100fe60045481565b6040519081526020016100bc565b60025461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100bc565b61019061015f366004610aa0565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b005b6101a56101a0366004610c86565b610319565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016100bc565b6100fe60035481565b6101a56101ed366004610d30565b61072d565b600180546101ff90610d95565b80601f016020809104026020016040519081016040528092919081815260200182805461022b90610d95565b80156102785780601f1061024d57610100808354040283529160200191610278565b820191906000526020600020905b81548152906001019060200180831161025b57829003601f168201915b505050505081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061031357507f4e2312e0000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600080845167ffffffffffffffff81111561033657610336610aeb565b60405190808252806020026020018201604052801561035f578160200160208202803683370190505b5090506000855167ffffffffffffffff81111561037e5761037e610aeb565b6040519080825280602002602001820160405280156103a7578160200160208202803683370190505b50905060005b865181101561044d57878382815181106103c9576103c9610de8565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503082828151811061041657610416610de8565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061044581610e17565b9150506103ad565b506040517f4e1273f40000000000000000000000000000000000000000000000000000000081526000903390634e1273f49061048f9086908b90600401610eb1565b600060405180830381865afa1580156104ac573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526104f29190810190610f1e565b6040517f4e1273f40000000000000000000000000000000000000000000000000000000081529091506000903390634e1273f4906105369086908c90600401610eb1565b600060405180830381865afa158015610553573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526105999190810190610f1e565b90507f342e0fabcfd1ee833d876ecb1c45c3c2128e88b7cb5ba33cb71476504c75ac96893084846040516105d09493929190610faf565b60405180910390a18551156106bb576040517f48656c6c6f2066726f6d20746865206f746865722073696465000000000000006020820152603901604051602081830303815290604052805190602001208680519060200120146106bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084015b60405180910390fd5b60005460ff1615156001036106f757507fdeadbeef00000000000000000000000000000000000000000000000000000000935061072492505050565b507fbc197c8100000000000000000000000000000000000000000000000000000000935061072492505050565b95945050505050565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602481018490526000908190339062fdd58e90604401602060405180830381865afa1580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190610ffa565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815230600482015260248101879052909150600090339062fdd58e90604401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610ffa565b6040805173ffffffffffffffffffffffffffffffffffffffff8a168152306020820152908101849052606081018290529091507f35754fc132e57c492c060947310a879a2a3bc6d8360c268803988f6366a5ffa29060800160405180910390a1835115610986576040517f48656c6c6f2066726f6d20746865206f74686572207369646500000000000000602082015260390160405160208183030381529060405280519060200120848051906020012014610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084016106b2565b60005460ff1615156001036109c057507fdeadbeef0000000000000000000000000000000000000000000000000000000091506107249050565b507ff23a6e610000000000000000000000000000000000000000000000000000000091506107249050565b600060208083528351808285015260005b81811015610a18578581018301518582016040015282016109fc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600060208284031215610a6957600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610a9957600080fd5b9392505050565b600060208284031215610ab257600080fd5b81358015158114610a9957600080fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610ae657600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610b6157610b61610aeb565b604052919050565b600067ffffffffffffffff821115610b8357610b83610aeb565b5060051b60200190565b600082601f830112610b9e57600080fd5b81356020610bb3610bae83610b69565b610b1a565b82815260059290921b84018101918181019086841115610bd257600080fd5b8286015b84811015610bed5780358352918301918301610bd6565b509695505050505050565b600082601f830112610c0957600080fd5b813567ffffffffffffffff811115610c2357610c23610aeb565b610c5460207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610b1a565b818152846020838601011115610c6957600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610c9e57600080fd5b610ca786610ac2565b9450610cb560208701610ac2565b9350604086013567ffffffffffffffff80821115610cd257600080fd5b610cde89838a01610b8d565b94506060880135915080821115610cf457600080fd5b610d0089838a01610b8d565b93506080880135915080821115610d1657600080fd5b50610d2388828901610bf8565b9150509295509295909350565b600080600080600060a08688031215610d4857600080fd5b610d5186610ac2565b9450610d5f60208701610ac2565b93506040860135925060608601359150608086013567ffffffffffffffff811115610d8957600080fd5b610d2388828901610bf8565b600181811c90821680610da957607f821691505b602082108103610de2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e6f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b600081518084526020808501945080840160005b83811015610ea657815187529582019590820190600101610e8a565b509495945050505050565b604080825283519082018190526000906020906060840190828701845b82811015610f0057815173ffffffffffffffffffffffffffffffffffffffff1684529284019290840190600101610ece565b50505083810382850152610f148186610e76565b9695505050505050565b60006020808385031215610f3157600080fd5b825167ffffffffffffffff811115610f4857600080fd5b8301601f81018513610f5957600080fd5b8051610f67610bae82610b69565b81815260059190911b82018301908381019087831115610f8657600080fd5b928401925b82841015610fa457835182529284019290840190610f8b565b979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525060806040830152610fe86080830185610e76565b8281036060840152610fa48185610e76565b60006020828403121561100c57600080fd5b505191905056fea264697066735822122052e616f77f40428e17fab870862ee8e44cf55cab8bc91a155c593c524929473064736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b50611049806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c80636eb3cd4911610076578063bc197c811161005b578063bc197c8114610192578063c1292cc3146101d6578063f23a6e61146101df57600080fd5b80636eb3cd491461010c578063a175b6381461015157600080fd5b80626e75ec146100a757806301ffc9a7146100c55780631dbb9381146100e857806343183834146100f5575b600080fd5b6100af6101f2565b6040516100bc91906109eb565b60405180910390f35b6100d86100d3366004610a57565b610280565b60405190151581526020016100bc565b6000546100d89060ff1681565b6100fe60045481565b6040519081526020016100bc565b60025461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100bc565b61019061015f366004610aa0565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b005b6101a56101a0366004610c86565b610319565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016100bc565b6100fe60035481565b6101a56101ed366004610d30565b61072d565b600180546101ff90610d95565b80601f016020809104026020016040519081016040528092919081815260200182805461022b90610d95565b80156102785780601f1061024d57610100808354040283529160200191610278565b820191906000526020600020905b81548152906001019060200180831161025b57829003601f168201915b505050505081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061031357507f4e2312e0000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600080845167ffffffffffffffff81111561033657610336610aeb565b60405190808252806020026020018201604052801561035f578160200160208202803683370190505b5090506000855167ffffffffffffffff81111561037e5761037e610aeb565b6040519080825280602002602001820160405280156103a7578160200160208202803683370190505b50905060005b865181101561044d57878382815181106103c9576103c9610de8565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503082828151811061041657610416610de8565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061044581610e17565b9150506103ad565b506040517f4e1273f40000000000000000000000000000000000000000000000000000000081526000903390634e1273f49061048f9086908b90600401610eb1565b600060405180830381865afa1580156104ac573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526104f29190810190610f1e565b6040517f4e1273f40000000000000000000000000000000000000000000000000000000081529091506000903390634e1273f4906105369086908c90600401610eb1565b600060405180830381865afa158015610553573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526105999190810190610f1e565b90507f342e0fabcfd1ee833d876ecb1c45c3c2128e88b7cb5ba33cb71476504c75ac96893084846040516105d09493929190610faf565b60405180910390a18551156106bb576040517f48656c6c6f2066726f6d20746865206f746865722073696465000000000000006020820152603901604051602081830303815290604052805190602001208680519060200120146106bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084015b60405180910390fd5b60005460ff1615156001036106f757507fdeadbeef00000000000000000000000000000000000000000000000000000000935061072492505050565b507fbc197c8100000000000000000000000000000000000000000000000000000000935061072492505050565b95945050505050565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602481018490526000908190339062fdd58e90604401602060405180830381865afa1580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190610ffa565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815230600482015260248101879052909150600090339062fdd58e90604401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610ffa565b6040805173ffffffffffffffffffffffffffffffffffffffff8a168152306020820152908101849052606081018290529091507f35754fc132e57c492c060947310a879a2a3bc6d8360c268803988f6366a5ffa29060800160405180910390a1835115610986576040517f48656c6c6f2066726f6d20746865206f74686572207369646500000000000000602082015260390160405160208183030381529060405280519060200120848051906020012014610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084016106b2565b60005460ff1615156001036109c057507fdeadbeef0000000000000000000000000000000000000000000000000000000091506107249050565b507ff23a6e610000000000000000000000000000000000000000000000000000000091506107249050565b600060208083528351808285015260005b81811015610a18578581018301518582016040015282016109fc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600060208284031215610a6957600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610a9957600080fd5b9392505050565b600060208284031215610ab257600080fd5b81358015158114610a9957600080fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610ae657600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610b6157610b61610aeb565b604052919050565b600067ffffffffffffffff821115610b8357610b83610aeb565b5060051b60200190565b600082601f830112610b9e57600080fd5b81356020610bb3610bae83610b69565b610b1a565b82815260059290921b84018101918181019086841115610bd257600080fd5b8286015b84811015610bed5780358352918301918301610bd6565b509695505050505050565b600082601f830112610c0957600080fd5b813567ffffffffffffffff811115610c2357610c23610aeb565b610c5460207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610b1a565b818152846020838601011115610c6957600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610c9e57600080fd5b610ca786610ac2565b9450610cb560208701610ac2565b9350604086013567ffffffffffffffff80821115610cd257600080fd5b610cde89838a01610b8d565b94506060880135915080821115610cf457600080fd5b610d0089838a01610b8d565b93506080880135915080821115610d1657600080fd5b50610d2388828901610bf8565b9150509295509295909350565b600080600080600060a08688031215610d4857600080fd5b610d5186610ac2565b9450610d5f60208701610ac2565b93506040860135925060608601359150608086013567ffffffffffffffff811115610d8957600080fd5b610d2388828901610bf8565b600181811c90821680610da957607f821691505b602082108103610de2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e6f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b600081518084526020808501945080840160005b83811015610ea657815187529582019590820190600101610e8a565b509495945050505050565b604080825283519082018190526000906020906060840190828701845b82811015610f0057815173ffffffffffffffffffffffffffffffffffffffff1684529284019290840190600101610ece565b50505083810382850152610f148186610e76565b9695505050505050565b60006020808385031215610f3157600080fd5b825167ffffffffffffffff811115610f4857600080fd5b8301601f81018513610f5957600080fd5b8051610f67610bae82610b69565b81815260059190911b82018301908381019087831115610f8657600080fd5b928401925b82841015610fa457835182529284019290840190610f8b565b979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525060806040830152610fe86080830185610e76565b8281036060840152610fa48185610e76565b60006020828403121561100c57600080fd5b505191905056fea2646970667358221220096faf4f1ea2036193054940e5f451d1e24910d8212753c9c321a1a7254fa57264736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a25760003560e01c80636eb3cd4911610076578063bc197c811161005b578063bc197c8114610192578063c1292cc3146101d6578063f23a6e61146101df57600080fd5b80636eb3cd491461010c578063a175b6381461015157600080fd5b80626e75ec146100a757806301ffc9a7146100c55780631dbb9381146100e857806343183834146100f5575b600080fd5b6100af6101f2565b6040516100bc91906109eb565b60405180910390f35b6100d86100d3366004610a57565b610280565b60405190151581526020016100bc565b6000546100d89060ff1681565b6100fe60045481565b6040519081526020016100bc565b60025461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100bc565b61019061015f366004610aa0565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016911515919091179055565b005b6101a56101a0366004610c86565b610319565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020016100bc565b6100fe60035481565b6101a56101ed366004610d30565b61072d565b600180546101ff90610d95565b80601f016020809104026020016040519081016040528092919081815260200182805461022b90610d95565b80156102785780601f1061024d57610100808354040283529160200191610278565b820191906000526020600020905b81548152906001019060200180831161025b57829003601f168201915b505050505081565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061031357507f4e2312e0000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600080845167ffffffffffffffff81111561033657610336610aeb565b60405190808252806020026020018201604052801561035f578160200160208202803683370190505b5090506000855167ffffffffffffffff81111561037e5761037e610aeb565b6040519080825280602002602001820160405280156103a7578160200160208202803683370190505b50905060005b865181101561044d57878382815181106103c9576103c9610de8565b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250503082828151811061041657610416610de8565b73ffffffffffffffffffffffffffffffffffffffff909216602092830291909101909101528061044581610e17565b9150506103ad565b506040517f4e1273f40000000000000000000000000000000000000000000000000000000081526000903390634e1273f49061048f9086908b90600401610eb1565b600060405180830381865afa1580156104ac573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526104f29190810190610f1e565b6040517f4e1273f40000000000000000000000000000000000000000000000000000000081529091506000903390634e1273f4906105369086908c90600401610eb1565b600060405180830381865afa158015610553573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526105999190810190610f1e565b90507f342e0fabcfd1ee833d876ecb1c45c3c2128e88b7cb5ba33cb71476504c75ac96893084846040516105d09493929190610faf565b60405180910390a18551156106bb576040517f48656c6c6f2066726f6d20746865206f746865722073696465000000000000006020820152603901604051602081830303815290604052805190602001208680519060200120146106bb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084015b60405180910390fd5b60005460ff1615156001036106f757507fdeadbeef00000000000000000000000000000000000000000000000000000000935061072492505050565b507fbc197c8100000000000000000000000000000000000000000000000000000000935061072492505050565b95945050505050565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85166004820152602481018490526000908190339062fdd58e90604401602060405180830381865afa1580156107a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c59190610ffa565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815230600482015260248101879052909150600090339062fdd58e90604401602060405180830381865afa158015610824573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108489190610ffa565b6040805173ffffffffffffffffffffffffffffffffffffffff8a168152306020820152908101849052606081018290529091507f35754fc132e57c492c060947310a879a2a3bc6d8360c268803988f6366a5ffa29060800160405180910390a1835115610986576040517f48656c6c6f2066726f6d20746865206f74686572207369646500000000000000602082015260390160405160208183030381529060405280519060200120848051906020012014610986576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f4552433131353552656365697665724d6f636b236f6e4552433131353552656360448201527f65697665643a20554e45585045435445445f444154410000000000000000000060648201526084016106b2565b60005460ff1615156001036109c057507fdeadbeef0000000000000000000000000000000000000000000000000000000091506107249050565b507ff23a6e610000000000000000000000000000000000000000000000000000000091506107249050565b600060208083528351808285015260005b81811015610a18578581018301518582016040015282016109fc565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600060208284031215610a6957600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610a9957600080fd5b9392505050565b600060208284031215610ab257600080fd5b81358015158114610a9957600080fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610ae657600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610b6157610b61610aeb565b604052919050565b600067ffffffffffffffff821115610b8357610b83610aeb565b5060051b60200190565b600082601f830112610b9e57600080fd5b81356020610bb3610bae83610b69565b610b1a565b82815260059290921b84018101918181019086841115610bd257600080fd5b8286015b84811015610bed5780358352918301918301610bd6565b509695505050505050565b600082601f830112610c0957600080fd5b813567ffffffffffffffff811115610c2357610c23610aeb565b610c5460207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610b1a565b818152846020838601011115610c6957600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610c9e57600080fd5b610ca786610ac2565b9450610cb560208701610ac2565b9350604086013567ffffffffffffffff80821115610cd257600080fd5b610cde89838a01610b8d565b94506060880135915080821115610cf457600080fd5b610d0089838a01610b8d565b93506080880135915080821115610d1657600080fd5b50610d2388828901610bf8565b9150509295509295909350565b600080600080600060a08688031215610d4857600080fd5b610d5186610ac2565b9450610d5f60208701610ac2565b93506040860135925060608601359150608086013567ffffffffffffffff811115610d8957600080fd5b610d2388828901610bf8565b600181811c90821680610da957607f821691505b602082108103610de2577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610e6f577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b5060010190565b600081518084526020808501945080840160005b83811015610ea657815187529582019590820190600101610e8a565b509495945050505050565b604080825283519082018190526000906020906060840190828701845b82811015610f0057815173ffffffffffffffffffffffffffffffffffffffff1684529284019290840190600101610ece565b50505083810382850152610f148186610e76565b9695505050505050565b60006020808385031215610f3157600080fd5b825167ffffffffffffffff811115610f4857600080fd5b8301601f81018513610f5957600080fd5b8051610f67610bae82610b69565b81815260059190911b82018301908381019087831115610f8657600080fd5b928401925b82841015610fa457835182529284019290840190610f8b565b979650505050505050565b600073ffffffffffffffffffffffffffffffffffffffff808716835280861660208401525060806040830152610fe86080830185610e76565b8281036060840152610fa48185610e76565b60006020828403121561100c57600080fd5b505191905056fea2646970667358221220096faf4f1ea2036193054940e5f451d1e24910d8212753c9c321a1a7254fa57264736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock.json b/src/artifacts/contracts/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock.json index 8bbb578..aae2287 100644 --- a/src/artifacts/contracts/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock.json +++ b/src/artifacts/contracts/mocks/ERC1271WalletValidationMock.sol/ERC1271WalletValidationMock.json @@ -193,8 +193,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b506040516110b43803806110b483398101604081905261002f91610061565b600055600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000163317905561007a565b60006020828403121561007357600080fd5b5051919050565b61102b806100896000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80638da5cb5b1161005b5780638da5cb5b14610137578063a886100f1461017c578063bc197c81146101a3578063f23a6e61146101db57600080fd5b80630c0b5b8b1461008d5780631626ba7e146100ea57806320c13b0b146100fd5780632ec40aa414610110575b600080fd5b6100b47f20c13b0b0000000000000000000000000000000000000000000000000000000081565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100b46100f8366004610b78565b610213565b6100b461010b366004610bc4565b61041c565b6100b47f1626ba7e0000000000000000000000000000000000000000000000000000000081565b6001546101579073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100e1565b6100b47fdeadbeef0000000000000000000000000000000000000000000000000000000081565b6100b46101b1366004610de5565b7fbc197c810000000000000000000000000000000000000000000000000000000095945050505050565b6100b46101e9366004610e8f565b7ff23a6e610000000000000000000000000000000000000000000000000000000095945050505050565b60008061025a600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006102a2602086868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b90506000858560408181106102b9576102b9610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018b905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa158015610377573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506103ec577fdeadbeef0000000000000000000000000000000000000000000000000000000061040e565b7f1626ba7e000000000000000000000000000000000000000000000000000000005b9450505050505b9392505050565b600080610463600087878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006060807f31f4aeb4c6ce4241b2a2bb1b0fca5018eec89848248e6b6d8e0959d2639f0aa884016105be576104d389898080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250925060e091506108a29050565b915060006104e28360606107e6565b905060006104f18460806107e6565b90506042821415806105035750606481115b1561053757507fdeadbeef0000000000000000000000000000000000000000000000000000000095506107de945050505050565b61057b8b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060e092508e91506108a29050565b92506105b584848051906020012060405160200161059a929190610f47565b604051602081830303815290604052805190602001206109e5565b945050506105d9565b88886040516105ce929190610f69565b604051809103902092505b600061061f600089898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b9050600061066760208a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060008989604081811061067e5761067e610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018a905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa15801561073c573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506107b1577fdeadbeef000000000000000000000000000000000000000000000000000000006107d3565b7f20c13b0b000000000000000000000000000000000000000000000000000000005b985050505050505050505b949350505050565b60006107f3826020610fa8565b83511015610888576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084015b60405180910390fd5b610893602083610fa8565b91508183015190505b92915050565b60608183111561090e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b8351821115610979576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b6109838383610fbb565b67ffffffffffffffff81111561099b5761099b610c59565b6040519080825280601f01601f1916602001820160405280156109c5576020820181803683370190505b5090506104156020820184602087016109de9190610fa8565b8351610a50565b60006040518060400160405280600281526020017f190100000000000000000000000000000000000000000000000000000000000081525060005483604051602001610a3393929190610fce565b604051602081830303815290604052805190602001209050919050565b6020811015610a97578151835160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0180199092169116178352505050565b828203610aa357505050565b82821115610add5760208103905080820181840181515b82851015610ad5578451865260209586019590940193610aba565b905250505050565b60208103905080820181840183515b81861215610b2657825182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09283019290910190610aec565b85525050505050565b60008083601f840112610b4157600080fd5b50813567ffffffffffffffff811115610b5957600080fd5b602083019150836020828501011115610b7157600080fd5b9250929050565b600080600060408486031215610b8d57600080fd5b83359250602084013567ffffffffffffffff811115610bab57600080fd5b610bb786828701610b2f565b9497909650939450505050565b60008060008060408587031215610bda57600080fd5b843567ffffffffffffffff80821115610bf257600080fd5b610bfe88838901610b2f565b90965094506020870135915080821115610c1757600080fd5b50610c2487828801610b2f565b95989497509550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610c5457600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ccf57610ccf610c59565b604052919050565b600082601f830112610ce857600080fd5b8135602067ffffffffffffffff821115610d0457610d04610c59565b8160051b610d13828201610c88565b9283528481018201928281019087851115610d2d57600080fd5b83870192505b84831015610d4c57823582529183019190830190610d33565b979650505050505050565b600082601f830112610d6857600080fd5b813567ffffffffffffffff811115610d8257610d82610c59565b610db360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c88565b818152846020838601011115610dc857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610dfd57600080fd5b610e0686610c30565b9450610e1460208701610c30565b9350604086013567ffffffffffffffff80821115610e3157600080fd5b610e3d89838a01610cd7565b94506060880135915080821115610e5357600080fd5b610e5f89838a01610cd7565b93506080880135915080821115610e7557600080fd5b50610e8288828901610d57565b9150509295509295909350565b600080600080600060a08688031215610ea757600080fd5b610eb086610c30565b9450610ebe60208701610c30565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ee857600080fd5b610e8288828901610d57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60005b83811015610f3e578181015183820152602001610f26565b50506000910152565b60008351610f59818460208801610f23565b9190910191825250602001919050565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561089c5761089c610f79565b8181038181111561089c5761089c610f79565b60008451610fe0818460208901610f23565b9190910192835250602082015260400191905056fea2646970667358221220f701eb25102fbe91eb7678e8b6db3ed10117cfba28f689b998bc76f95c0d2b1d64736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c80638da5cb5b1161005b5780638da5cb5b14610137578063a886100f1461017c578063bc197c81146101a3578063f23a6e61146101db57600080fd5b80630c0b5b8b1461008d5780631626ba7e146100ea57806320c13b0b146100fd5780632ec40aa414610110575b600080fd5b6100b47f20c13b0b0000000000000000000000000000000000000000000000000000000081565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100b46100f8366004610b78565b610213565b6100b461010b366004610bc4565b61041c565b6100b47f1626ba7e0000000000000000000000000000000000000000000000000000000081565b6001546101579073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100e1565b6100b47fdeadbeef0000000000000000000000000000000000000000000000000000000081565b6100b46101b1366004610de5565b7fbc197c810000000000000000000000000000000000000000000000000000000095945050505050565b6100b46101e9366004610e8f565b7ff23a6e610000000000000000000000000000000000000000000000000000000095945050505050565b60008061025a600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006102a2602086868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b90506000858560408181106102b9576102b9610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018b905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa158015610377573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506103ec577fdeadbeef0000000000000000000000000000000000000000000000000000000061040e565b7f1626ba7e000000000000000000000000000000000000000000000000000000005b9450505050505b9392505050565b600080610463600087878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006060807f31f4aeb4c6ce4241b2a2bb1b0fca5018eec89848248e6b6d8e0959d2639f0aa884016105be576104d389898080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250925060e091506108a29050565b915060006104e28360606107e6565b905060006104f18460806107e6565b90506042821415806105035750606481115b1561053757507fdeadbeef0000000000000000000000000000000000000000000000000000000095506107de945050505050565b61057b8b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060e092508e91506108a29050565b92506105b584848051906020012060405160200161059a929190610f47565b604051602081830303815290604052805190602001206109e5565b945050506105d9565b88886040516105ce929190610f69565b604051809103902092505b600061061f600089898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b9050600061066760208a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060008989604081811061067e5761067e610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018a905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa15801561073c573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506107b1577fdeadbeef000000000000000000000000000000000000000000000000000000006107d3565b7f20c13b0b000000000000000000000000000000000000000000000000000000005b985050505050505050505b949350505050565b60006107f3826020610fa8565b83511015610888576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084015b60405180910390fd5b610893602083610fa8565b91508183015190505b92915050565b60608183111561090e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b8351821115610979576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b6109838383610fbb565b67ffffffffffffffff81111561099b5761099b610c59565b6040519080825280601f01601f1916602001820160405280156109c5576020820181803683370190505b5090506104156020820184602087016109de9190610fa8565b8351610a50565b60006040518060400160405280600281526020017f190100000000000000000000000000000000000000000000000000000000000081525060005483604051602001610a3393929190610fce565b604051602081830303815290604052805190602001209050919050565b6020811015610a97578151835160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0180199092169116178352505050565b828203610aa357505050565b82821115610add5760208103905080820181840181515b82851015610ad5578451865260209586019590940193610aba565b905250505050565b60208103905080820181840183515b81861215610b2657825182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09283019290910190610aec565b85525050505050565b60008083601f840112610b4157600080fd5b50813567ffffffffffffffff811115610b5957600080fd5b602083019150836020828501011115610b7157600080fd5b9250929050565b600080600060408486031215610b8d57600080fd5b83359250602084013567ffffffffffffffff811115610bab57600080fd5b610bb786828701610b2f565b9497909650939450505050565b60008060008060408587031215610bda57600080fd5b843567ffffffffffffffff80821115610bf257600080fd5b610bfe88838901610b2f565b90965094506020870135915080821115610c1757600080fd5b50610c2487828801610b2f565b95989497509550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610c5457600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ccf57610ccf610c59565b604052919050565b600082601f830112610ce857600080fd5b8135602067ffffffffffffffff821115610d0457610d04610c59565b8160051b610d13828201610c88565b9283528481018201928281019087851115610d2d57600080fd5b83870192505b84831015610d4c57823582529183019190830190610d33565b979650505050505050565b600082601f830112610d6857600080fd5b813567ffffffffffffffff811115610d8257610d82610c59565b610db360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c88565b818152846020838601011115610dc857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610dfd57600080fd5b610e0686610c30565b9450610e1460208701610c30565b9350604086013567ffffffffffffffff80821115610e3157600080fd5b610e3d89838a01610cd7565b94506060880135915080821115610e5357600080fd5b610e5f89838a01610cd7565b93506080880135915080821115610e7557600080fd5b50610e8288828901610d57565b9150509295509295909350565b600080600080600060a08688031215610ea757600080fd5b610eb086610c30565b9450610ebe60208701610c30565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ee857600080fd5b610e8288828901610d57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60005b83811015610f3e578181015183820152602001610f26565b50506000910152565b60008351610f59818460208801610f23565b9190910191825250602001919050565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561089c5761089c610f79565b8181038181111561089c5761089c610f79565b60008451610fe0818460208901610f23565b9190910192835250602082015260400191905056fea2646970667358221220f701eb25102fbe91eb7678e8b6db3ed10117cfba28f689b998bc76f95c0d2b1d64736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b506040516110b43803806110b483398101604081905261002f91610061565b600055600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000163317905561007a565b60006020828403121561007357600080fd5b5051919050565b61102b806100896000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80638da5cb5b1161005b5780638da5cb5b14610137578063a886100f1461017c578063bc197c81146101a3578063f23a6e61146101db57600080fd5b80630c0b5b8b1461008d5780631626ba7e146100ea57806320c13b0b146100fd5780632ec40aa414610110575b600080fd5b6100b47f20c13b0b0000000000000000000000000000000000000000000000000000000081565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100b46100f8366004610b78565b610213565b6100b461010b366004610bc4565b61041c565b6100b47f1626ba7e0000000000000000000000000000000000000000000000000000000081565b6001546101579073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100e1565b6100b47fdeadbeef0000000000000000000000000000000000000000000000000000000081565b6100b46101b1366004610de5565b7fbc197c810000000000000000000000000000000000000000000000000000000095945050505050565b6100b46101e9366004610e8f565b7ff23a6e610000000000000000000000000000000000000000000000000000000095945050505050565b60008061025a600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006102a2602086868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b90506000858560408181106102b9576102b9610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018b905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa158015610377573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506103ec577fdeadbeef0000000000000000000000000000000000000000000000000000000061040e565b7f1626ba7e000000000000000000000000000000000000000000000000000000005b9450505050505b9392505050565b600080610463600087878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006060807f31f4aeb4c6ce4241b2a2bb1b0fca5018eec89848248e6b6d8e0959d2639f0aa884016105be576104d389898080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250925060e091506108a29050565b915060006104e28360606107e6565b905060006104f18460806107e6565b90506042821415806105035750606481115b1561053757507fdeadbeef0000000000000000000000000000000000000000000000000000000095506107de945050505050565b61057b8b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060e092508e91506108a29050565b92506105b584848051906020012060405160200161059a929190610f47565b604051602081830303815290604052805190602001206109e5565b945050506105d9565b88886040516105ce929190610f69565b604051809103902092505b600061061f600089898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b9050600061066760208a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060008989604081811061067e5761067e610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018a905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa15801561073c573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506107b1577fdeadbeef000000000000000000000000000000000000000000000000000000006107d3565b7f20c13b0b000000000000000000000000000000000000000000000000000000005b985050505050505050505b949350505050565b60006107f3826020610fa8565b83511015610888576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084015b60405180910390fd5b610893602083610fa8565b91508183015190505b92915050565b60608183111561090e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b8351821115610979576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b6109838383610fbb565b67ffffffffffffffff81111561099b5761099b610c59565b6040519080825280601f01601f1916602001820160405280156109c5576020820181803683370190505b5090506104156020820184602087016109de9190610fa8565b8351610a50565b60006040518060400160405280600281526020017f190100000000000000000000000000000000000000000000000000000000000081525060005483604051602001610a3393929190610fce565b604051602081830303815290604052805190602001209050919050565b6020811015610a97578151835160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0180199092169116178352505050565b828203610aa357505050565b82821115610add5760208103905080820181840181515b82851015610ad5578451865260209586019590940193610aba565b905250505050565b60208103905080820181840183515b81861215610b2657825182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09283019290910190610aec565b85525050505050565b60008083601f840112610b4157600080fd5b50813567ffffffffffffffff811115610b5957600080fd5b602083019150836020828501011115610b7157600080fd5b9250929050565b600080600060408486031215610b8d57600080fd5b83359250602084013567ffffffffffffffff811115610bab57600080fd5b610bb786828701610b2f565b9497909650939450505050565b60008060008060408587031215610bda57600080fd5b843567ffffffffffffffff80821115610bf257600080fd5b610bfe88838901610b2f565b90965094506020870135915080821115610c1757600080fd5b50610c2487828801610b2f565b95989497509550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610c5457600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ccf57610ccf610c59565b604052919050565b600082601f830112610ce857600080fd5b8135602067ffffffffffffffff821115610d0457610d04610c59565b8160051b610d13828201610c88565b9283528481018201928281019087851115610d2d57600080fd5b83870192505b84831015610d4c57823582529183019190830190610d33565b979650505050505050565b600082601f830112610d6857600080fd5b813567ffffffffffffffff811115610d8257610d82610c59565b610db360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c88565b818152846020838601011115610dc857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610dfd57600080fd5b610e0686610c30565b9450610e1460208701610c30565b9350604086013567ffffffffffffffff80821115610e3157600080fd5b610e3d89838a01610cd7565b94506060880135915080821115610e5357600080fd5b610e5f89838a01610cd7565b93506080880135915080821115610e7557600080fd5b50610e8288828901610d57565b9150509295509295909350565b600080600080600060a08688031215610ea757600080fd5b610eb086610c30565b9450610ebe60208701610c30565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ee857600080fd5b610e8288828901610d57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60005b83811015610f3e578181015183820152602001610f26565b50506000910152565b60008351610f59818460208801610f23565b9190910191825250602001919050565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561089c5761089c610f79565b8181038181111561089c5761089c610f79565b60008451610fe0818460208901610f23565b9190910192835250602082015260400191905056fea26469706673582212204c5b7824a40a7b9f03ac5efbfe70aec565552ea909fdc53b44c8dce522b5459f64736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c80638da5cb5b1161005b5780638da5cb5b14610137578063a886100f1461017c578063bc197c81146101a3578063f23a6e61146101db57600080fd5b80630c0b5b8b1461008d5780631626ba7e146100ea57806320c13b0b146100fd5780632ec40aa414610110575b600080fd5b6100b47f20c13b0b0000000000000000000000000000000000000000000000000000000081565b6040517fffffffff0000000000000000000000000000000000000000000000000000000090911681526020015b60405180910390f35b6100b46100f8366004610b78565b610213565b6100b461010b366004610bc4565b61041c565b6100b47f1626ba7e0000000000000000000000000000000000000000000000000000000081565b6001546101579073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100e1565b6100b47fdeadbeef0000000000000000000000000000000000000000000000000000000081565b6100b46101b1366004610de5565b7fbc197c810000000000000000000000000000000000000000000000000000000095945050505050565b6100b46101e9366004610e8f565b7ff23a6e610000000000000000000000000000000000000000000000000000000095945050505050565b60008061025a600085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006102a2602086868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b90506000858560408181106102b9576102b9610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018b905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa158015610377573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506103ec577fdeadbeef0000000000000000000000000000000000000000000000000000000061040e565b7f1626ba7e000000000000000000000000000000000000000000000000000000005b9450505050505b9392505050565b600080610463600087878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060006060807f31f4aeb4c6ce4241b2a2bb1b0fca5018eec89848248e6b6d8e0959d2639f0aa884016105be576104d389898080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920182905250925060e091506108a29050565b915060006104e28360606107e6565b905060006104f18460806107e6565b90506042821415806105035750606481115b1561053757507fdeadbeef0000000000000000000000000000000000000000000000000000000095506107de945050505050565b61057b8b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525060e092508e91506108a29050565b92506105b584848051906020012060405160200161059a929190610f47565b604051602081830303815290604052805190602001206109e5565b945050506105d9565b88886040516105ce929190610f69565b604051809103902092505b600061061f600089898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b9050600061066760208a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506107e69050565b905060008989604081811061067e5761067e610ef4565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c81018a905292013560f81c925060009160019150605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff851690820152606081018690526080810185905260a0016020604051602081039080840390855afa15801561073c573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015160015490925073ffffffffffffffffffffffffffffffffffffffff80841691161490506107b1577fdeadbeef000000000000000000000000000000000000000000000000000000006107d3565b7f20c13b0b000000000000000000000000000000000000000000000000000000005b985050505050505050505b949350505050565b60006107f3826020610fa8565b83511015610888576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084015b60405180910390fd5b610893602083610fa8565b91508183015190505b92915050565b60608183111561090e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b8351821115610979576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4552433132373157616c6c65744d6f636b23736c6963653a204572726f720000604482015260640161087f565b6109838383610fbb565b67ffffffffffffffff81111561099b5761099b610c59565b6040519080825280601f01601f1916602001820160405280156109c5576020820181803683370190505b5090506104156020820184602087016109de9190610fa8565b8351610a50565b60006040518060400160405280600281526020017f190100000000000000000000000000000000000000000000000000000000000081525060005483604051602001610a3393929190610fce565b604051602081830303815290604052805190602001209050919050565b6020811015610a97578151835160208390036101000a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0180199092169116178352505050565b828203610aa357505050565b82821115610add5760208103905080820181840181515b82851015610ad5578451865260209586019590940193610aba565b905250505050565b60208103905080820181840183515b81861215610b2657825182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09283019290910190610aec565b85525050505050565b60008083601f840112610b4157600080fd5b50813567ffffffffffffffff811115610b5957600080fd5b602083019150836020828501011115610b7157600080fd5b9250929050565b600080600060408486031215610b8d57600080fd5b83359250602084013567ffffffffffffffff811115610bab57600080fd5b610bb786828701610b2f565b9497909650939450505050565b60008060008060408587031215610bda57600080fd5b843567ffffffffffffffff80821115610bf257600080fd5b610bfe88838901610b2f565b90965094506020870135915080821115610c1757600080fd5b50610c2487828801610b2f565b95989497509550505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610c5457600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610ccf57610ccf610c59565b604052919050565b600082601f830112610ce857600080fd5b8135602067ffffffffffffffff821115610d0457610d04610c59565b8160051b610d13828201610c88565b9283528481018201928281019087851115610d2d57600080fd5b83870192505b84831015610d4c57823582529183019190830190610d33565b979650505050505050565b600082601f830112610d6857600080fd5b813567ffffffffffffffff811115610d8257610d82610c59565b610db360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610c88565b818152846020838601011115610dc857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215610dfd57600080fd5b610e0686610c30565b9450610e1460208701610c30565b9350604086013567ffffffffffffffff80821115610e3157600080fd5b610e3d89838a01610cd7565b94506060880135915080821115610e5357600080fd5b610e5f89838a01610cd7565b93506080880135915080821115610e7557600080fd5b50610e8288828901610d57565b9150509295509295909350565b600080600080600060a08688031215610ea757600080fd5b610eb086610c30565b9450610ebe60208701610c30565b93506040860135925060608601359150608086013567ffffffffffffffff811115610ee857600080fd5b610e8288828901610d57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60005b83811015610f3e578181015183820152602001610f26565b50506000910152565b60008351610f59818460208801610f23565b9190910191825250602001919050565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561089c5761089c610f79565b8181038181111561089c5761089c610f79565b60008451610fe0818460208901610f23565b9190910192835250602082015260400191905056fea26469706673582212204c5b7824a40a7b9f03ac5efbfe70aec565552ea909fdc53b44c8dce522b5459f64736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC1271WalletValidationMock.sol/LibEIP712.json b/src/artifacts/contracts/mocks/ERC1271WalletValidationMock.sol/LibEIP712.json index 4c4f849..3346058 100644 --- a/src/artifacts/contracts/mocks/ERC1271WalletValidationMock.sol/LibEIP712.json +++ b/src/artifacts/contracts/mocks/ERC1271WalletValidationMock.sol/LibEIP712.json @@ -15,8 +15,8 @@ "type": "constructor" } ], - "bytecode": "0x6080604052348015600f57600080fd5b5060405160953803806095833981016040819052602a916031565b6000556049565b600060208284031215604257600080fd5b5051919050565b603f8060566000396000f3fe6080604052600080fdfea264697066735822122037156843bc171e499afc64a1215611401502286696479e350818b7eaf0b20b0f64736f6c63430008120033", - "deployedBytecode": "0x6080604052600080fdfea264697066735822122037156843bc171e499afc64a1215611401502286696479e350818b7eaf0b20b0f64736f6c63430008120033", + "bytecode": "0x6080604052348015600f57600080fd5b5060405160953803806095833981016040819052602a916031565b6000556049565b600060208284031215604257600080fd5b5051919050565b603f8060566000396000f3fe6080604052600080fdfea2646970667358221220cd1f9de5e29e20bb5ea8eb01fa9d2ad1c972c07d41693e641db0ed71e96ad68364736f6c63430008120033", + "deployedBytecode": "0x6080604052600080fdfea2646970667358221220cd1f9de5e29e20bb5ea8eb01fa9d2ad1c972c07d41693e641db0ed71e96ad68364736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC20Mock.sol/ERC20.json b/src/artifacts/contracts/mocks/ERC20Mock.sol/ERC20.json index 1587245..301be05 100644 --- a/src/artifacts/contracts/mocks/ERC20Mock.sol/ERC20.json +++ b/src/artifacts/contracts/mocks/ERC20Mock.sol/ERC20.json @@ -235,8 +235,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b506105ad806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100ed578063a457c2d714610123578063a9059cbb14610136578063dd62ed3e1461014957600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100c757806339509351146100da575b600080fd5b6100a061009b366004610467565b61018f565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100ac565b6100a06100d5366004610491565b6101a6565b6100a06100e8366004610467565b610205565b6100b96100fb3660046104cd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100a0610131366004610467565b610249565b6100a0610144366004610467565b61028d565b6100b96101573660046104ef565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b600061019c33848461029a565b5060015b92915050565b60006101b3848484610349565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600160209081526040808320338085529252909120546101fb9186916101f6908690610551565b61029a565b5060019392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610564565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610551565b600061019c338484610349565b73ffffffffffffffffffffffffffffffffffffffff82166102ba57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166102da57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff821661036957600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120805483929061039e908490610551565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260208190526040812080548392906103d8908490610564565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161033c91815260200190565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046257600080fd5b919050565b6000806040838503121561047a57600080fd5b6104838361043e565b946020939093013593505050565b6000806000606084860312156104a657600080fd5b6104af8461043e565b92506104bd6020850161043e565b9150604084013590509250925092565b6000602082840312156104df57600080fd5b6104e88261043e565b9392505050565b6000806040838503121561050257600080fd5b61050b8361043e565b91506105196020840161043e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101a0576101a0610522565b808201808211156101a0576101a061052256fea2646970667358221220b20da9cf164581965801fed5bbe544b3ca3278011be068a45ef821c893f57d9d64736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100ed578063a457c2d714610123578063a9059cbb14610136578063dd62ed3e1461014957600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100c757806339509351146100da575b600080fd5b6100a061009b366004610467565b61018f565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100ac565b6100a06100d5366004610491565b6101a6565b6100a06100e8366004610467565b610205565b6100b96100fb3660046104cd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100a0610131366004610467565b610249565b6100a0610144366004610467565b61028d565b6100b96101573660046104ef565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b600061019c33848461029a565b5060015b92915050565b60006101b3848484610349565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600160209081526040808320338085529252909120546101fb9186916101f6908690610551565b61029a565b5060019392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610564565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610551565b600061019c338484610349565b73ffffffffffffffffffffffffffffffffffffffff82166102ba57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166102da57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff821661036957600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120805483929061039e908490610551565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260208190526040812080548392906103d8908490610564565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161033c91815260200190565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046257600080fd5b919050565b6000806040838503121561047a57600080fd5b6104838361043e565b946020939093013593505050565b6000806000606084860312156104a657600080fd5b6104af8461043e565b92506104bd6020850161043e565b9150604084013590509250925092565b6000602082840312156104df57600080fd5b6104e88261043e565b9392505050565b6000806040838503121561050257600080fd5b61050b8361043e565b91506105196020840161043e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101a0576101a0610522565b808201808211156101a0576101a061052256fea2646970667358221220b20da9cf164581965801fed5bbe544b3ca3278011be068a45ef821c893f57d9d64736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b506105ad806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100ed578063a457c2d714610123578063a9059cbb14610136578063dd62ed3e1461014957600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100c757806339509351146100da575b600080fd5b6100a061009b366004610467565b61018f565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100ac565b6100a06100d5366004610491565b6101a6565b6100a06100e8366004610467565b610205565b6100b96100fb3660046104cd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100a0610131366004610467565b610249565b6100a0610144366004610467565b61028d565b6100b96101573660046104ef565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b600061019c33848461029a565b5060015b92915050565b60006101b3848484610349565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600160209081526040808320338085529252909120546101fb9186916101f6908690610551565b61029a565b5060019392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610564565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610551565b600061019c338484610349565b73ffffffffffffffffffffffffffffffffffffffff82166102ba57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166102da57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff821661036957600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120805483929061039e908490610551565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260208190526040812080548392906103d8908490610564565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161033c91815260200190565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046257600080fd5b919050565b6000806040838503121561047a57600080fd5b6104838361043e565b946020939093013593505050565b6000806000606084860312156104a657600080fd5b6104af8461043e565b92506104bd6020850161043e565b9150604084013590509250925092565b6000602082840312156104df57600080fd5b6104e88261043e565b9392505050565b6000806040838503121561050257600080fd5b61050b8361043e565b91506105196020840161043e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101a0576101a0610522565b808201808211156101a0576101a061052256fea264697066735822122004f238f212c507affa391daf77fc2bc94ff505ad9b1db74c5f9b57a477cef4d564736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c806370a082311161005b57806370a08231146100ed578063a457c2d714610123578063a9059cbb14610136578063dd62ed3e1461014957600080fd5b8063095ea7b31461008d57806318160ddd146100b557806323b872dd146100c757806339509351146100da575b600080fd5b6100a061009b366004610467565b61018f565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100ac565b6100a06100d5366004610491565b6101a6565b6100a06100e8366004610467565b610205565b6100b96100fb3660046104cd565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100a0610131366004610467565b610249565b6100a0610144366004610467565b61028d565b6100b96101573660046104ef565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b600061019c33848461029a565b5060015b92915050565b60006101b3848484610349565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600160209081526040808320338085529252909120546101fb9186916101f6908690610551565b61029a565b5060019392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610564565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168452909152812054909161019c9185906101f6908690610551565b600061019c338484610349565b73ffffffffffffffffffffffffffffffffffffffff82166102ba57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166102da57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff821661036957600080fd5b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120805483929061039e908490610551565b909155505073ffffffffffffffffffffffffffffffffffffffff8216600090815260208190526040812080548392906103d8908490610564565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161033c91815260200190565b803573ffffffffffffffffffffffffffffffffffffffff8116811461046257600080fd5b919050565b6000806040838503121561047a57600080fd5b6104838361043e565b946020939093013593505050565b6000806000606084860312156104a657600080fd5b6104af8461043e565b92506104bd6020850161043e565b9150604084013590509250925092565b6000602082840312156104df57600080fd5b6104e88261043e565b9392505050565b6000806040838503121561050257600080fd5b61050b8361043e565b91506105196020840161043e565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101a0576101a0610522565b808201808211156101a0576101a061052256fea264697066735822122004f238f212c507affa391daf77fc2bc94ff505ad9b1db74c5f9b57a477cef4d564736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC20Mock.sol/ERC20Mock.json b/src/artifacts/contracts/mocks/ERC20Mock.sol/ERC20Mock.json index a5c9cad..8d2bff1 100644 --- a/src/artifacts/contracts/mocks/ERC20Mock.sol/ERC20Mock.json +++ b/src/artifacts/contracts/mocks/ERC20Mock.sol/ERC20Mock.json @@ -281,8 +281,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5061094d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c80633950935111610076578063a457c2d71161005b578063a457c2d714610181578063a9059cbb14610194578063dd62ed3e146101a757600080fd5b8063395093511461013857806370a082311461014b57600080fd5b806323b872dd116100a757806323b872dd146100fd5780632e72102f14610110578063378934b41461012557600080fd5b8063095ea7b3146100c357806318160ddd146100eb575b600080fd5b6100d66100d13660046106ae565b6101ed565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100e2565b6100d661010b3660046106d8565b610204565b61012361011e366004610760565b610263565b005b6101236101333660046106ae565b61037b565b6100d66101463660046106ae565b610389565b6100ef6101593660046107e4565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100d661018f3660046106ae565b6103cd565b6100d66101a23660046106ae565b610411565b6100ef6101b5366004610806565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60006101fa33848461041e565b5060015b92915050565b60006102118484846104cd565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033808552925290912054610259918691610254908690610868565b61041e565b5060019392505050565b60005b81811015610373578585828181106102805761028061087b565b905060200201602081019061029591906107e4565b73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb858585858181106102c3576102c361087b565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815273ffffffffffffffffffffffffffffffffffffffff909416600485015260200291909101356024830152506044016020604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036091906108aa565b508061036b816108cc565b915050610266565b505050505050565b61038582826105c2565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610904565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610868565b60006101fa3384846104cd565b73ffffffffffffffffffffffffffffffffffffffff821661043e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831661045e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff82166104ed57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604081208054839290610522908490610868565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061055c908490610904565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516104c091815260200190565b73ffffffffffffffffffffffffffffffffffffffff82166105e257600080fd5b80600260008282546105f49190610904565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061062e908490610904565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b803573ffffffffffffffffffffffffffffffffffffffff811681146106a957600080fd5b919050565b600080604083850312156106c157600080fd5b6106ca83610685565b946020939093013593505050565b6000806000606084860312156106ed57600080fd5b6106f684610685565b925061070460208501610685565b9150604084013590509250925092565b60008083601f84011261072657600080fd5b50813567ffffffffffffffff81111561073e57600080fd5b6020830191508360208260051b850101111561075957600080fd5b9250929050565b60008060008060006060868803121561077857600080fd5b853567ffffffffffffffff8082111561079057600080fd5b61079c89838a01610714565b90975095508591506107b060208901610685565b945060408801359150808211156107c657600080fd5b506107d388828901610714565b969995985093965092949392505050565b6000602082840312156107f657600080fd5b6107ff82610685565b9392505050565b6000806040838503121561081957600080fd5b61082283610685565b915061083060208401610685565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101fe576101fe610839565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000602082840312156108bc57600080fd5b815180151581146107ff57600080fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036108fd576108fd610839565b5060010190565b808201808211156101fe576101fe61083956fea2646970667358221220121c90e1b5286285789a8100cdc0cd6292c333b5275fcfa9552ce6b109c9763b64736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100be5760003560e01c80633950935111610076578063a457c2d71161005b578063a457c2d714610181578063a9059cbb14610194578063dd62ed3e146101a757600080fd5b8063395093511461013857806370a082311461014b57600080fd5b806323b872dd116100a757806323b872dd146100fd5780632e72102f14610110578063378934b41461012557600080fd5b8063095ea7b3146100c357806318160ddd146100eb575b600080fd5b6100d66100d13660046106ae565b6101ed565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100e2565b6100d661010b3660046106d8565b610204565b61012361011e366004610760565b610263565b005b6101236101333660046106ae565b61037b565b6100d66101463660046106ae565b610389565b6100ef6101593660046107e4565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100d661018f3660046106ae565b6103cd565b6100d66101a23660046106ae565b610411565b6100ef6101b5366004610806565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60006101fa33848461041e565b5060015b92915050565b60006102118484846104cd565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033808552925290912054610259918691610254908690610868565b61041e565b5060019392505050565b60005b81811015610373578585828181106102805761028061087b565b905060200201602081019061029591906107e4565b73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb858585858181106102c3576102c361087b565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815273ffffffffffffffffffffffffffffffffffffffff909416600485015260200291909101356024830152506044016020604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036091906108aa565b508061036b816108cc565b915050610266565b505050505050565b61038582826105c2565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610904565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610868565b60006101fa3384846104cd565b73ffffffffffffffffffffffffffffffffffffffff821661043e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831661045e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff82166104ed57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604081208054839290610522908490610868565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061055c908490610904565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516104c091815260200190565b73ffffffffffffffffffffffffffffffffffffffff82166105e257600080fd5b80600260008282546105f49190610904565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061062e908490610904565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b803573ffffffffffffffffffffffffffffffffffffffff811681146106a957600080fd5b919050565b600080604083850312156106c157600080fd5b6106ca83610685565b946020939093013593505050565b6000806000606084860312156106ed57600080fd5b6106f684610685565b925061070460208501610685565b9150604084013590509250925092565b60008083601f84011261072657600080fd5b50813567ffffffffffffffff81111561073e57600080fd5b6020830191508360208260051b850101111561075957600080fd5b9250929050565b60008060008060006060868803121561077857600080fd5b853567ffffffffffffffff8082111561079057600080fd5b61079c89838a01610714565b90975095508591506107b060208901610685565b945060408801359150808211156107c657600080fd5b506107d388828901610714565b969995985093965092949392505050565b6000602082840312156107f657600080fd5b6107ff82610685565b9392505050565b6000806040838503121561081957600080fd5b61082283610685565b915061083060208401610685565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101fe576101fe610839565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000602082840312156108bc57600080fd5b815180151581146107ff57600080fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036108fd576108fd610839565b5060010190565b808201808211156101fe576101fe61083956fea2646970667358221220121c90e1b5286285789a8100cdc0cd6292c333b5275fcfa9552ce6b109c9763b64736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b5061094d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c80633950935111610076578063a457c2d71161005b578063a457c2d714610181578063a9059cbb14610194578063dd62ed3e146101a757600080fd5b8063395093511461013857806370a082311461014b57600080fd5b806323b872dd116100a757806323b872dd146100fd5780632e72102f14610110578063378934b41461012557600080fd5b8063095ea7b3146100c357806318160ddd146100eb575b600080fd5b6100d66100d13660046106ae565b6101ed565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100e2565b6100d661010b3660046106d8565b610204565b61012361011e366004610760565b610263565b005b6101236101333660046106ae565b61037b565b6100d66101463660046106ae565b610389565b6100ef6101593660046107e4565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100d661018f3660046106ae565b6103cd565b6100d66101a23660046106ae565b610411565b6100ef6101b5366004610806565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60006101fa33848461041e565b5060015b92915050565b60006102118484846104cd565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033808552925290912054610259918691610254908690610868565b61041e565b5060019392505050565b60005b81811015610373578585828181106102805761028061087b565b905060200201602081019061029591906107e4565b73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb858585858181106102c3576102c361087b565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815273ffffffffffffffffffffffffffffffffffffffff909416600485015260200291909101356024830152506044016020604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036091906108aa565b508061036b816108cc565b915050610266565b505050505050565b61038582826105c2565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610904565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610868565b60006101fa3384846104cd565b73ffffffffffffffffffffffffffffffffffffffff821661043e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831661045e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff82166104ed57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604081208054839290610522908490610868565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061055c908490610904565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516104c091815260200190565b73ffffffffffffffffffffffffffffffffffffffff82166105e257600080fd5b80600260008282546105f49190610904565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061062e908490610904565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b803573ffffffffffffffffffffffffffffffffffffffff811681146106a957600080fd5b919050565b600080604083850312156106c157600080fd5b6106ca83610685565b946020939093013593505050565b6000806000606084860312156106ed57600080fd5b6106f684610685565b925061070460208501610685565b9150604084013590509250925092565b60008083601f84011261072657600080fd5b50813567ffffffffffffffff81111561073e57600080fd5b6020830191508360208260051b850101111561075957600080fd5b9250929050565b60008060008060006060868803121561077857600080fd5b853567ffffffffffffffff8082111561079057600080fd5b61079c89838a01610714565b90975095508591506107b060208901610685565b945060408801359150808211156107c657600080fd5b506107d388828901610714565b969995985093965092949392505050565b6000602082840312156107f657600080fd5b6107ff82610685565b9392505050565b6000806040838503121561081957600080fd5b61082283610685565b915061083060208401610685565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101fe576101fe610839565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000602082840312156108bc57600080fd5b815180151581146107ff57600080fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036108fd576108fd610839565b5060010190565b808201808211156101fe576101fe61083956fea26469706673582212205ec7cefcc639ef98577551ce8e790ce2f7e2fcba120ceba5125bbe254a364e0764736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100be5760003560e01c80633950935111610076578063a457c2d71161005b578063a457c2d714610181578063a9059cbb14610194578063dd62ed3e146101a757600080fd5b8063395093511461013857806370a082311461014b57600080fd5b806323b872dd116100a757806323b872dd146100fd5780632e72102f14610110578063378934b41461012557600080fd5b8063095ea7b3146100c357806318160ddd146100eb575b600080fd5b6100d66100d13660046106ae565b6101ed565b60405190151581526020015b60405180910390f35b6002545b6040519081526020016100e2565b6100d661010b3660046106d8565b610204565b61012361011e366004610760565b610263565b005b6101236101333660046106ae565b61037b565b6100d66101463660046106ae565b610389565b6100ef6101593660046107e4565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b6100d661018f3660046106ae565b6103cd565b6100d66101a23660046106ae565b610411565b6100ef6101b5366004610806565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205490565b60006101fa33848461041e565b5060015b92915050565b60006102118484846104cd565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033808552925290912054610259918691610254908690610868565b61041e565b5060019392505050565b60005b81811015610373578585828181106102805761028061087b565b905060200201602081019061029591906107e4565b73ffffffffffffffffffffffffffffffffffffffff1663a9059cbb858585858181106102c3576102c361087b565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b16815273ffffffffffffffffffffffffffffffffffffffff909416600485015260200291909101356024830152506044016020604051808303816000875af115801561033c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061036091906108aa565b508061036b816108cc565b915050610266565b505050505050565b61038582826105c2565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610904565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915281205490916101fa918590610254908690610868565b60006101fa3384846104cd565b73ffffffffffffffffffffffffffffffffffffffff821661043e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831661045e57600080fd5b73ffffffffffffffffffffffffffffffffffffffff83811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b73ffffffffffffffffffffffffffffffffffffffff82166104ed57600080fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604081208054839290610522908490610868565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061055c908490610904565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516104c091815260200190565b73ffffffffffffffffffffffffffffffffffffffff82166105e257600080fd5b80600260008282546105f49190610904565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000908152602081905260408120805483929061062e908490610904565b909155505060405181815273ffffffffffffffffffffffffffffffffffffffff8316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b803573ffffffffffffffffffffffffffffffffffffffff811681146106a957600080fd5b919050565b600080604083850312156106c157600080fd5b6106ca83610685565b946020939093013593505050565b6000806000606084860312156106ed57600080fd5b6106f684610685565b925061070460208501610685565b9150604084013590509250925092565b60008083601f84011261072657600080fd5b50813567ffffffffffffffff81111561073e57600080fd5b6020830191508360208260051b850101111561075957600080fd5b9250929050565b60008060008060006060868803121561077857600080fd5b853567ffffffffffffffff8082111561079057600080fd5b61079c89838a01610714565b90975095508591506107b060208901610685565b945060408801359150808211156107c657600080fd5b506107d388828901610714565b969995985093965092949392505050565b6000602082840312156107f657600080fd5b6107ff82610685565b9392505050565b6000806040838503121561081957600080fd5b61082283610685565b915061083060208401610685565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156101fe576101fe610839565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000602082840312156108bc57600080fd5b815180151581146107ff57600080fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036108fd576108fd610839565b5060010190565b808201808211156101fe576101fe61083956fea26469706673582212205ec7cefcc639ef98577551ce8e790ce2f7e2fcba120ceba5125bbe254a364e0764736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/ERC2981GlobalMock.sol/ERC2981GlobalMock.json b/src/artifacts/contracts/mocks/ERC2981GlobalMock.sol/ERC2981GlobalMock.json index d0b18e7..e2c14ab 100644 --- a/src/artifacts/contracts/mocks/ERC2981GlobalMock.sol/ERC2981GlobalMock.json +++ b/src/artifacts/contracts/mocks/ERC2981GlobalMock.sol/ERC2981GlobalMock.json @@ -529,8 +529,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b50604051620028bb380380620028bb833981016040819052620000349162000146565b81818181600362000046838262000240565b50600262000055828262000240565b5050505050505062000367565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008a57600080fd5b815167ffffffffffffffff80821115620000a857620000a862000062565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000f157620000f162000062565b816040528381526020925086838588010111156200010e57600080fd5b600091505b8382101562000132578582018301518183018401529082019062000113565b600093810190920192909252949350505050565b600080604083850312156200015a57600080fd5b825167ffffffffffffffff808211156200017357600080fd5b620001818683870162000078565b935060208501519150808211156200019857600080fd5b50620001a78582860162000078565b9150509250929050565b600181811c90821680620001c657607f821691505b602082108103620001e757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023b57600081815260208120601f850160051c81016020861015620002165750805b601f850160051c820191505b81811015620002375782815560010162000222565b5050505b505050565b815167ffffffffffffffff8111156200025d576200025d62000062565b62000275816200026e8454620001b1565b84620001ed565b602080601f831160018114620002cb5760008415620002945750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000237565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031a57888601518255948401946001909101908401620002f9565b50858210156200035757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61254480620003776000396000f3fe608060405234801561001057600080fd5b506004361061011a5760003560e01c80636c0360eb116100b2578063bd7a6c4111610081578063d7a0ad9011610066578063d7a0ad9014610317578063e985e9c51461032a578063f242432a146103735761011a565b8063bd7a6c41146102e0578063c9823cc6146102f35761011a565b80636c0360eb1461029f57806393cfa682146102a7578063a22cb465146102ba578063a3f091f5146102cd5761011a565b80632a55205a116100ee5780632a55205a146102185780632eb2c2d614610257578063437ecbe91461026c5780634e1273f41461027f5761011a565b8062fdd58e146101a757806301ffc9a7146101cd57806306fdde03146101f05780630e89341c14610205575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101ba6101b5366004611a7e565b610386565b6040519081526020015b60405180910390f35b6101e06101db366004611ad9565b6103bc565b60405190151581526020016101c4565b6101f86103c7565b6040516101c49190611b64565b6101f8610213366004611b77565b610455565b61022b610226366004611b90565b610489565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101c4565b61026a610265366004611d4d565b6104e4565b005b61026a61027a366004611df7565b610688565b61029261028d366004611e2a565b610698565b6040516101c49190611f25565b6101f8610838565b61026a6102b5366004611a7e565b610845565b61026a6102c8366004611f38565b610853565b61026a6102db366004611f74565b6108ea565b61026a6102ee366004611fd5565b6108fc565b60045460055461022b9173ffffffffffffffffffffffffffffffffffffffff169082565b61026a610325366004612049565b610907565b6101e06103383660046120d6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61026a610381366004612109565b610913565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103b682610ab0565b600380546103d49061216e565b80601f01602080910402602001604051908101604052809291908181526020018280546104009061216e565b801561044d5780601f106104225761010080835404028352916020019161044d565b820191906000526020600020905b81548152906001019060200180831161043057829003601f168201915b505050505081565b6060600261046283610b0c565b6040516020016104739291906121dd565b6040516020818303038152906040529050919050565b6040805180820190915260045473ffffffffffffffffffffffffffffffffffffffff1680825260055460208301819052600092839290916103e8906104ce9087612319565b6104d89190612330565b92509250509250929050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610538575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610667576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161019e565b61067385858585610c6c565b610681858585855a86610ed1565b5050505050565b61069383838361105a565b505050565b6060815183511461072b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161019e565b6000835167ffffffffffffffff81111561074757610747611bb2565b604051908082528060200260200182016040528015610770578160200160208202803683370190505b50905060005b8451811015610830576000808683815181106107945761079461236b565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107ea576107ea61236b565b60200260200101518152602001908152602001600020548282815181106108135761081361236b565b6020908102919091010152806108288161239a565b915050610776565b509392505050565b600280546103d49061216e565b61084f82826110f8565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6108f684848484611278565b50505050565b610693838383611320565b6108f6848484846114ec565b3373ffffffffffffffffffffffffffffffffffffffff86161480610967575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6109f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610a96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161019e565b610aa2858585856116c2565b610681858585855a8661179d565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610b0357506001919050565b6103b68261191c565b606081600003610b4f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610b795780610b638161239a565b9150610b729050600a83612330565b9150610b53565b60008167ffffffffffffffff811115610b9457610b94611bb2565b6040519080825280601f01601f191660200182016040528015610bbe576020820181803683370190505b509050815b8515610c6357610bd46001826123d2565b90506000610be3600a88612330565b610bee90600a612319565b610bf890886123d2565b610c039060306123e5565b905060008160f81b905080848481518110610c2057610c2061236b565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610c5a600a89612330565b97505050610bc3565b50949350505050565b8051825114610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161019e565b815160005b81811015610e4b57828181518110610d1c57610d1c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d7657610d7661236b565b602002602001015181526020019081526020016000206000828254610d9b91906123d2565b92505081905550828181518110610db457610db461236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610e0e57610e0e61236b565b602002602001015181526020019081526020016000206000828254610e3391906123fe565b90915550819050610e438161239a565b915050610d02565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610ec2929190612411565b60405180910390a45050505050565b610ef08573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f39959493929190612436565b60206040518083038160008887f1158015610f58573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f7d91906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161019e565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110989084906123d2565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff821661119b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f20524543495049454e545f49535f307830000000000000000000000000000000606482015260840161019e565b6103e881111561122d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f204645455f49535f41424f56455f3130305f50455243454e5400000000000000606482015260840161019e565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155600555565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906112b69084906123fe565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108f660008585855a8661179d565b8151815181146113b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b60005b81811015611466578281815181106113cf576113cf61236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106114295761142961236b565b60200260200101518152602001908152602001600020600082825461144e91906123d2565b9091555081905061145e8161239a565b9150506113b5565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516114de929190612411565b60405180910390a450505050565b815183511461157d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b825160005b818110156116335783818151811061159c5761159c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106115f6576115f661236b565b60200260200101518152602001908152602001600020600082825461161b91906123fe565b9091555081905061162b8161239a565b915050611582565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516116ab929190612411565b60405180910390a461068160008686865a87610ed1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117009084906123d2565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906117439084906123fe565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016114de565b6117bc8573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118059594939291906124be565b60206040518083038160008887f1158015611824573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061184991906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161019e565b60006103b682611961565b6000813f801580159061195a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016119b457506001919050565b6103b68260007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a0b57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103b6565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a7957600080fd5b919050565b60008060408385031215611a9157600080fd5b611a9a83611a55565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611ad657600080fd5b50565b600060208284031215611aeb57600080fd5b813561195a81611aa8565b60005b83811015611b11578181015183820152602001611af9565b50506000910152565b60008151808452611b32816020860160208601611af6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061195a6020830184611b1a565b600060208284031215611b8957600080fd5b5035919050565b60008060408385031215611ba357600080fd5b50508035926020909101359150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c2857611c28611bb2565b604052919050565b600067ffffffffffffffff821115611c4a57611c4a611bb2565b5060051b60200190565b600082601f830112611c6557600080fd5b81356020611c7a611c7583611c30565b611be1565b82815260059290921b84018101918181019086841115611c9957600080fd5b8286015b84811015611cb45780358352918301918301611c9d565b509695505050505050565b600082601f830112611cd057600080fd5b813567ffffffffffffffff811115611cea57611cea611bb2565b611d1b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611be1565b818152846020838601011115611d3057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611d6557600080fd5b611d6e86611a55565b9450611d7c60208701611a55565b9350604086013567ffffffffffffffff80821115611d9957600080fd5b611da589838a01611c54565b94506060880135915080821115611dbb57600080fd5b611dc789838a01611c54565b93506080880135915080821115611ddd57600080fd5b50611dea88828901611cbf565b9150509295509295909350565b600080600060608486031215611e0c57600080fd5b611e1584611a55565b95602085013595506040909401359392505050565b60008060408385031215611e3d57600080fd5b823567ffffffffffffffff80821115611e5557600080fd5b818501915085601f830112611e6957600080fd5b81356020611e79611c7583611c30565b82815260059290921b84018101918181019089841115611e9857600080fd5b948201945b83861015611ebd57611eae86611a55565b82529482019490820190611e9d565b96505086013592505080821115611ed357600080fd5b50611ee085828601611c54565b9150509250929050565b600081518084526020808501945080840160005b83811015611f1a57815187529582019590820190600101611efe565b509495945050505050565b60208152600061195a6020830184611eea565b60008060408385031215611f4b57600080fd5b611f5483611a55565b915060208301358015158114611f6957600080fd5b809150509250929050565b60008060008060808587031215611f8a57600080fd5b611f9385611a55565b93506020850135925060408501359150606085013567ffffffffffffffff811115611fbd57600080fd5b611fc987828801611cbf565b91505092959194509250565b600080600060608486031215611fea57600080fd5b611ff384611a55565b9250602084013567ffffffffffffffff8082111561201057600080fd5b61201c87838801611c54565b9350604086013591508082111561203257600080fd5b5061203f86828701611c54565b9150509250925092565b6000806000806080858703121561205f57600080fd5b61206885611a55565b9350602085013567ffffffffffffffff8082111561208557600080fd5b61209188838901611c54565b945060408701359150808211156120a757600080fd5b6120b388838901611c54565b935060608701359150808211156120c957600080fd5b50611fc987828801611cbf565b600080604083850312156120e957600080fd5b6120f283611a55565b915061210060208401611a55565b90509250929050565b600080600080600060a0868803121561212157600080fd5b61212a86611a55565b945061213860208701611a55565b93506040860135925060608601359150608086013567ffffffffffffffff81111561216257600080fd5b611dea88828901611cbf565b600181811c9082168061218257607f821691505b6020821081036121bb577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516121d3818560208601611af6565b9290920192915050565b600080845481600182811c9150808316806121f957607f831692505b60208084108203612231577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b8180156122455760018114612278576122a5565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122a5565b60008b81526020902060005b8681101561229d5781548b820152908501908301612284565b505084890196505b5050505050506122e16122b882866121c1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176103b6576103b66122ea565b600082612366577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123cb576123cb6122ea565b5060010190565b818103818111156103b6576103b66122ea565b60ff81811683821601908111156103b6576103b66122ea565b808201808211156103b6576103b66122ea565b6040815260006124246040830185611eea565b82810360208401526122e18185611eea565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261246f60a0830186611eea565b82810360608401526124818186611eea565b905082810360808401526124958185611b1a565b98975050505050505050565b6000602082840312156124b357600080fd5b815161195a81611aa8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261250360a0830184611b1a565b97965050505050505056fea2646970667358221220f87e3e4a17bc764420c06ca9abd70fb8a97acf07693145f4dc8c7e5e997b1a2264736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061011a5760003560e01c80636c0360eb116100b2578063bd7a6c4111610081578063d7a0ad9011610066578063d7a0ad9014610317578063e985e9c51461032a578063f242432a146103735761011a565b8063bd7a6c41146102e0578063c9823cc6146102f35761011a565b80636c0360eb1461029f57806393cfa682146102a7578063a22cb465146102ba578063a3f091f5146102cd5761011a565b80632a55205a116100ee5780632a55205a146102185780632eb2c2d614610257578063437ecbe91461026c5780634e1273f41461027f5761011a565b8062fdd58e146101a757806301ffc9a7146101cd57806306fdde03146101f05780630e89341c14610205575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101ba6101b5366004611a7e565b610386565b6040519081526020015b60405180910390f35b6101e06101db366004611ad9565b6103bc565b60405190151581526020016101c4565b6101f86103c7565b6040516101c49190611b64565b6101f8610213366004611b77565b610455565b61022b610226366004611b90565b610489565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101c4565b61026a610265366004611d4d565b6104e4565b005b61026a61027a366004611df7565b610688565b61029261028d366004611e2a565b610698565b6040516101c49190611f25565b6101f8610838565b61026a6102b5366004611a7e565b610845565b61026a6102c8366004611f38565b610853565b61026a6102db366004611f74565b6108ea565b61026a6102ee366004611fd5565b6108fc565b60045460055461022b9173ffffffffffffffffffffffffffffffffffffffff169082565b61026a610325366004612049565b610907565b6101e06103383660046120d6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61026a610381366004612109565b610913565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103b682610ab0565b600380546103d49061216e565b80601f01602080910402602001604051908101604052809291908181526020018280546104009061216e565b801561044d5780601f106104225761010080835404028352916020019161044d565b820191906000526020600020905b81548152906001019060200180831161043057829003601f168201915b505050505081565b6060600261046283610b0c565b6040516020016104739291906121dd565b6040516020818303038152906040529050919050565b6040805180820190915260045473ffffffffffffffffffffffffffffffffffffffff1680825260055460208301819052600092839290916103e8906104ce9087612319565b6104d89190612330565b92509250509250929050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610538575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610667576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161019e565b61067385858585610c6c565b610681858585855a86610ed1565b5050505050565b61069383838361105a565b505050565b6060815183511461072b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161019e565b6000835167ffffffffffffffff81111561074757610747611bb2565b604051908082528060200260200182016040528015610770578160200160208202803683370190505b50905060005b8451811015610830576000808683815181106107945761079461236b565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107ea576107ea61236b565b60200260200101518152602001908152602001600020548282815181106108135761081361236b565b6020908102919091010152806108288161239a565b915050610776565b509392505050565b600280546103d49061216e565b61084f82826110f8565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6108f684848484611278565b50505050565b610693838383611320565b6108f6848484846114ec565b3373ffffffffffffffffffffffffffffffffffffffff86161480610967575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6109f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610a96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161019e565b610aa2858585856116c2565b610681858585855a8661179d565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610b0357506001919050565b6103b68261191c565b606081600003610b4f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610b795780610b638161239a565b9150610b729050600a83612330565b9150610b53565b60008167ffffffffffffffff811115610b9457610b94611bb2565b6040519080825280601f01601f191660200182016040528015610bbe576020820181803683370190505b509050815b8515610c6357610bd46001826123d2565b90506000610be3600a88612330565b610bee90600a612319565b610bf890886123d2565b610c039060306123e5565b905060008160f81b905080848481518110610c2057610c2061236b565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610c5a600a89612330565b97505050610bc3565b50949350505050565b8051825114610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161019e565b815160005b81811015610e4b57828181518110610d1c57610d1c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d7657610d7661236b565b602002602001015181526020019081526020016000206000828254610d9b91906123d2565b92505081905550828181518110610db457610db461236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610e0e57610e0e61236b565b602002602001015181526020019081526020016000206000828254610e3391906123fe565b90915550819050610e438161239a565b915050610d02565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610ec2929190612411565b60405180910390a45050505050565b610ef08573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f39959493929190612436565b60206040518083038160008887f1158015610f58573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f7d91906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161019e565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110989084906123d2565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff821661119b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f20524543495049454e545f49535f307830000000000000000000000000000000606482015260840161019e565b6103e881111561122d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f204645455f49535f41424f56455f3130305f50455243454e5400000000000000606482015260840161019e565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155600555565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906112b69084906123fe565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108f660008585855a8661179d565b8151815181146113b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b60005b81811015611466578281815181106113cf576113cf61236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106114295761142961236b565b60200260200101518152602001908152602001600020600082825461144e91906123d2565b9091555081905061145e8161239a565b9150506113b5565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516114de929190612411565b60405180910390a450505050565b815183511461157d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b825160005b818110156116335783818151811061159c5761159c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106115f6576115f661236b565b60200260200101518152602001908152602001600020600082825461161b91906123fe565b9091555081905061162b8161239a565b915050611582565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516116ab929190612411565b60405180910390a461068160008686865a87610ed1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117009084906123d2565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906117439084906123fe565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016114de565b6117bc8573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118059594939291906124be565b60206040518083038160008887f1158015611824573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061184991906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161019e565b60006103b682611961565b6000813f801580159061195a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016119b457506001919050565b6103b68260007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a0b57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103b6565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a7957600080fd5b919050565b60008060408385031215611a9157600080fd5b611a9a83611a55565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611ad657600080fd5b50565b600060208284031215611aeb57600080fd5b813561195a81611aa8565b60005b83811015611b11578181015183820152602001611af9565b50506000910152565b60008151808452611b32816020860160208601611af6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061195a6020830184611b1a565b600060208284031215611b8957600080fd5b5035919050565b60008060408385031215611ba357600080fd5b50508035926020909101359150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c2857611c28611bb2565b604052919050565b600067ffffffffffffffff821115611c4a57611c4a611bb2565b5060051b60200190565b600082601f830112611c6557600080fd5b81356020611c7a611c7583611c30565b611be1565b82815260059290921b84018101918181019086841115611c9957600080fd5b8286015b84811015611cb45780358352918301918301611c9d565b509695505050505050565b600082601f830112611cd057600080fd5b813567ffffffffffffffff811115611cea57611cea611bb2565b611d1b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611be1565b818152846020838601011115611d3057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611d6557600080fd5b611d6e86611a55565b9450611d7c60208701611a55565b9350604086013567ffffffffffffffff80821115611d9957600080fd5b611da589838a01611c54565b94506060880135915080821115611dbb57600080fd5b611dc789838a01611c54565b93506080880135915080821115611ddd57600080fd5b50611dea88828901611cbf565b9150509295509295909350565b600080600060608486031215611e0c57600080fd5b611e1584611a55565b95602085013595506040909401359392505050565b60008060408385031215611e3d57600080fd5b823567ffffffffffffffff80821115611e5557600080fd5b818501915085601f830112611e6957600080fd5b81356020611e79611c7583611c30565b82815260059290921b84018101918181019089841115611e9857600080fd5b948201945b83861015611ebd57611eae86611a55565b82529482019490820190611e9d565b96505086013592505080821115611ed357600080fd5b50611ee085828601611c54565b9150509250929050565b600081518084526020808501945080840160005b83811015611f1a57815187529582019590820190600101611efe565b509495945050505050565b60208152600061195a6020830184611eea565b60008060408385031215611f4b57600080fd5b611f5483611a55565b915060208301358015158114611f6957600080fd5b809150509250929050565b60008060008060808587031215611f8a57600080fd5b611f9385611a55565b93506020850135925060408501359150606085013567ffffffffffffffff811115611fbd57600080fd5b611fc987828801611cbf565b91505092959194509250565b600080600060608486031215611fea57600080fd5b611ff384611a55565b9250602084013567ffffffffffffffff8082111561201057600080fd5b61201c87838801611c54565b9350604086013591508082111561203257600080fd5b5061203f86828701611c54565b9150509250925092565b6000806000806080858703121561205f57600080fd5b61206885611a55565b9350602085013567ffffffffffffffff8082111561208557600080fd5b61209188838901611c54565b945060408701359150808211156120a757600080fd5b6120b388838901611c54565b935060608701359150808211156120c957600080fd5b50611fc987828801611cbf565b600080604083850312156120e957600080fd5b6120f283611a55565b915061210060208401611a55565b90509250929050565b600080600080600060a0868803121561212157600080fd5b61212a86611a55565b945061213860208701611a55565b93506040860135925060608601359150608086013567ffffffffffffffff81111561216257600080fd5b611dea88828901611cbf565b600181811c9082168061218257607f821691505b6020821081036121bb577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516121d3818560208601611af6565b9290920192915050565b600080845481600182811c9150808316806121f957607f831692505b60208084108203612231577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b8180156122455760018114612278576122a5565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122a5565b60008b81526020902060005b8681101561229d5781548b820152908501908301612284565b505084890196505b5050505050506122e16122b882866121c1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176103b6576103b66122ea565b600082612366577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123cb576123cb6122ea565b5060010190565b818103818111156103b6576103b66122ea565b60ff81811683821601908111156103b6576103b66122ea565b808201808211156103b6576103b66122ea565b6040815260006124246040830185611eea565b82810360208401526122e18185611eea565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261246f60a0830186611eea565b82810360608401526124818186611eea565b905082810360808401526124958185611b1a565b98975050505050505050565b6000602082840312156124b357600080fd5b815161195a81611aa8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261250360a0830184611b1a565b97965050505050505056fea2646970667358221220f87e3e4a17bc764420c06ca9abd70fb8a97acf07693145f4dc8c7e5e997b1a2264736f6c63430008120033", + "bytecode": "0x60806040523480156200001157600080fd5b50604051620028bb380380620028bb833981016040819052620000349162000146565b81818181600362000046838262000240565b50600262000055828262000240565b5050505050505062000367565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008a57600080fd5b815167ffffffffffffffff80821115620000a857620000a862000062565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000f157620000f162000062565b816040528381526020925086838588010111156200010e57600080fd5b600091505b8382101562000132578582018301518183018401529082019062000113565b600093810190920192909252949350505050565b600080604083850312156200015a57600080fd5b825167ffffffffffffffff808211156200017357600080fd5b620001818683870162000078565b935060208501519150808211156200019857600080fd5b50620001a78582860162000078565b9150509250929050565b600181811c90821680620001c657607f821691505b602082108103620001e757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023b57600081815260208120601f850160051c81016020861015620002165750805b601f850160051c820191505b81811015620002375782815560010162000222565b5050505b505050565b815167ffffffffffffffff8111156200025d576200025d62000062565b62000275816200026e8454620001b1565b84620001ed565b602080601f831160018114620002cb5760008415620002945750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b17855562000237565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031a57888601518255948401946001909101908401620002f9565b50858210156200035757878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b61254480620003776000396000f3fe608060405234801561001057600080fd5b506004361061011a5760003560e01c80636c0360eb116100b2578063bd7a6c4111610081578063d7a0ad9011610066578063d7a0ad9014610317578063e985e9c51461032a578063f242432a146103735761011a565b8063bd7a6c41146102e0578063c9823cc6146102f35761011a565b80636c0360eb1461029f57806393cfa682146102a7578063a22cb465146102ba578063a3f091f5146102cd5761011a565b80632a55205a116100ee5780632a55205a146102185780632eb2c2d614610257578063437ecbe91461026c5780634e1273f41461027f5761011a565b8062fdd58e146101a757806301ffc9a7146101cd57806306fdde03146101f05780630e89341c14610205575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101ba6101b5366004611a7e565b610386565b6040519081526020015b60405180910390f35b6101e06101db366004611ad9565b6103bc565b60405190151581526020016101c4565b6101f86103c7565b6040516101c49190611b64565b6101f8610213366004611b77565b610455565b61022b610226366004611b90565b610489565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101c4565b61026a610265366004611d4d565b6104e4565b005b61026a61027a366004611df7565b610688565b61029261028d366004611e2a565b610698565b6040516101c49190611f25565b6101f8610838565b61026a6102b5366004611a7e565b610845565b61026a6102c8366004611f38565b610853565b61026a6102db366004611f74565b6108ea565b61026a6102ee366004611fd5565b6108fc565b60045460055461022b9173ffffffffffffffffffffffffffffffffffffffff169082565b61026a610325366004612049565b610907565b6101e06103383660046120d6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61026a610381366004612109565b610913565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103b682610ab0565b600380546103d49061216e565b80601f01602080910402602001604051908101604052809291908181526020018280546104009061216e565b801561044d5780601f106104225761010080835404028352916020019161044d565b820191906000526020600020905b81548152906001019060200180831161043057829003601f168201915b505050505081565b6060600261046283610b0c565b6040516020016104739291906121dd565b6040516020818303038152906040529050919050565b6040805180820190915260045473ffffffffffffffffffffffffffffffffffffffff1680825260055460208301819052600092839290916103e8906104ce9087612319565b6104d89190612330565b92509250509250929050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610538575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610667576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161019e565b61067385858585610c6c565b610681858585855a86610ed1565b5050505050565b61069383838361105a565b505050565b6060815183511461072b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161019e565b6000835167ffffffffffffffff81111561074757610747611bb2565b604051908082528060200260200182016040528015610770578160200160208202803683370190505b50905060005b8451811015610830576000808683815181106107945761079461236b565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107ea576107ea61236b565b60200260200101518152602001908152602001600020548282815181106108135761081361236b565b6020908102919091010152806108288161239a565b915050610776565b509392505050565b600280546103d49061216e565b61084f82826110f8565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6108f684848484611278565b50505050565b610693838383611320565b6108f6848484846114ec565b3373ffffffffffffffffffffffffffffffffffffffff86161480610967575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6109f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610a96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161019e565b610aa2858585856116c2565b610681858585855a8661179d565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610b0357506001919050565b6103b68261191c565b606081600003610b4f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610b795780610b638161239a565b9150610b729050600a83612330565b9150610b53565b60008167ffffffffffffffff811115610b9457610b94611bb2565b6040519080825280601f01601f191660200182016040528015610bbe576020820181803683370190505b509050815b8515610c6357610bd46001826123d2565b90506000610be3600a88612330565b610bee90600a612319565b610bf890886123d2565b610c039060306123e5565b905060008160f81b905080848481518110610c2057610c2061236b565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610c5a600a89612330565b97505050610bc3565b50949350505050565b8051825114610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161019e565b815160005b81811015610e4b57828181518110610d1c57610d1c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d7657610d7661236b565b602002602001015181526020019081526020016000206000828254610d9b91906123d2565b92505081905550828181518110610db457610db461236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610e0e57610e0e61236b565b602002602001015181526020019081526020016000206000828254610e3391906123fe565b90915550819050610e438161239a565b915050610d02565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610ec2929190612411565b60405180910390a45050505050565b610ef08573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f39959493929190612436565b60206040518083038160008887f1158015610f58573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f7d91906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161019e565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110989084906123d2565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff821661119b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f20524543495049454e545f49535f307830000000000000000000000000000000606482015260840161019e565b6103e881111561122d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f204645455f49535f41424f56455f3130305f50455243454e5400000000000000606482015260840161019e565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155600555565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906112b69084906123fe565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108f660008585855a8661179d565b8151815181146113b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b60005b81811015611466578281815181106113cf576113cf61236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106114295761142961236b565b60200260200101518152602001908152602001600020600082825461144e91906123d2565b9091555081905061145e8161239a565b9150506113b5565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516114de929190612411565b60405180910390a450505050565b815183511461157d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b825160005b818110156116335783818151811061159c5761159c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106115f6576115f661236b565b60200260200101518152602001908152602001600020600082825461161b91906123fe565b9091555081905061162b8161239a565b915050611582565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516116ab929190612411565b60405180910390a461068160008686865a87610ed1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117009084906123d2565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906117439084906123fe565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016114de565b6117bc8573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118059594939291906124be565b60206040518083038160008887f1158015611824573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061184991906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161019e565b60006103b682611961565b6000813f801580159061195a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016119b457506001919050565b6103b68260007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a0b57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103b6565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a7957600080fd5b919050565b60008060408385031215611a9157600080fd5b611a9a83611a55565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611ad657600080fd5b50565b600060208284031215611aeb57600080fd5b813561195a81611aa8565b60005b83811015611b11578181015183820152602001611af9565b50506000910152565b60008151808452611b32816020860160208601611af6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061195a6020830184611b1a565b600060208284031215611b8957600080fd5b5035919050565b60008060408385031215611ba357600080fd5b50508035926020909101359150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c2857611c28611bb2565b604052919050565b600067ffffffffffffffff821115611c4a57611c4a611bb2565b5060051b60200190565b600082601f830112611c6557600080fd5b81356020611c7a611c7583611c30565b611be1565b82815260059290921b84018101918181019086841115611c9957600080fd5b8286015b84811015611cb45780358352918301918301611c9d565b509695505050505050565b600082601f830112611cd057600080fd5b813567ffffffffffffffff811115611cea57611cea611bb2565b611d1b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611be1565b818152846020838601011115611d3057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611d6557600080fd5b611d6e86611a55565b9450611d7c60208701611a55565b9350604086013567ffffffffffffffff80821115611d9957600080fd5b611da589838a01611c54565b94506060880135915080821115611dbb57600080fd5b611dc789838a01611c54565b93506080880135915080821115611ddd57600080fd5b50611dea88828901611cbf565b9150509295509295909350565b600080600060608486031215611e0c57600080fd5b611e1584611a55565b95602085013595506040909401359392505050565b60008060408385031215611e3d57600080fd5b823567ffffffffffffffff80821115611e5557600080fd5b818501915085601f830112611e6957600080fd5b81356020611e79611c7583611c30565b82815260059290921b84018101918181019089841115611e9857600080fd5b948201945b83861015611ebd57611eae86611a55565b82529482019490820190611e9d565b96505086013592505080821115611ed357600080fd5b50611ee085828601611c54565b9150509250929050565b600081518084526020808501945080840160005b83811015611f1a57815187529582019590820190600101611efe565b509495945050505050565b60208152600061195a6020830184611eea565b60008060408385031215611f4b57600080fd5b611f5483611a55565b915060208301358015158114611f6957600080fd5b809150509250929050565b60008060008060808587031215611f8a57600080fd5b611f9385611a55565b93506020850135925060408501359150606085013567ffffffffffffffff811115611fbd57600080fd5b611fc987828801611cbf565b91505092959194509250565b600080600060608486031215611fea57600080fd5b611ff384611a55565b9250602084013567ffffffffffffffff8082111561201057600080fd5b61201c87838801611c54565b9350604086013591508082111561203257600080fd5b5061203f86828701611c54565b9150509250925092565b6000806000806080858703121561205f57600080fd5b61206885611a55565b9350602085013567ffffffffffffffff8082111561208557600080fd5b61209188838901611c54565b945060408701359150808211156120a757600080fd5b6120b388838901611c54565b935060608701359150808211156120c957600080fd5b50611fc987828801611cbf565b600080604083850312156120e957600080fd5b6120f283611a55565b915061210060208401611a55565b90509250929050565b600080600080600060a0868803121561212157600080fd5b61212a86611a55565b945061213860208701611a55565b93506040860135925060608601359150608086013567ffffffffffffffff81111561216257600080fd5b611dea88828901611cbf565b600181811c9082168061218257607f821691505b6020821081036121bb577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516121d3818560208601611af6565b9290920192915050565b600080845481600182811c9150808316806121f957607f831692505b60208084108203612231577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b8180156122455760018114612278576122a5565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122a5565b60008b81526020902060005b8681101561229d5781548b820152908501908301612284565b505084890196505b5050505050506122e16122b882866121c1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176103b6576103b66122ea565b600082612366577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123cb576123cb6122ea565b5060010190565b818103818111156103b6576103b66122ea565b60ff81811683821601908111156103b6576103b66122ea565b808201808211156103b6576103b66122ea565b6040815260006124246040830185611eea565b82810360208401526122e18185611eea565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261246f60a0830186611eea565b82810360608401526124818186611eea565b905082810360808401526124958185611b1a565b98975050505050505050565b6000602082840312156124b357600080fd5b815161195a81611aa8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261250360a0830184611b1a565b97965050505050505056fea2646970667358221220fa058f8fd77930ac8ac2c9a8ce1b170bb29eb7c2128de69c031823e9f139562264736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061011a5760003560e01c80636c0360eb116100b2578063bd7a6c4111610081578063d7a0ad9011610066578063d7a0ad9014610317578063e985e9c51461032a578063f242432a146103735761011a565b8063bd7a6c41146102e0578063c9823cc6146102f35761011a565b80636c0360eb1461029f57806393cfa682146102a7578063a22cb465146102ba578063a3f091f5146102cd5761011a565b80632a55205a116100ee5780632a55205a146102185780632eb2c2d614610257578063437ecbe91461026c5780634e1273f41461027f5761011a565b8062fdd58e146101a757806301ffc9a7146101cd57806306fdde03146101f05780630e89341c14610205575b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602360248201527f455243313135354d696e744275726e4d6f636b3a20494e56414c49445f4d455460448201527f484f44000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6101ba6101b5366004611a7e565b610386565b6040519081526020015b60405180910390f35b6101e06101db366004611ad9565b6103bc565b60405190151581526020016101c4565b6101f86103c7565b6040516101c49190611b64565b6101f8610213366004611b77565b610455565b61022b610226366004611b90565b610489565b6040805173ffffffffffffffffffffffffffffffffffffffff90931683526020830191909152016101c4565b61026a610265366004611d4d565b6104e4565b005b61026a61027a366004611df7565b610688565b61029261028d366004611e2a565b610698565b6040516101c49190611f25565b6101f8610838565b61026a6102b5366004611a7e565b610845565b61026a6102c8366004611f38565b610853565b61026a6102db366004611f74565b6108ea565b61026a6102ee366004611fd5565b6108fc565b60045460055461022b9173ffffffffffffffffffffffffffffffffffffffff169082565b61026a610325366004612049565b610907565b6101e06103383660046120d6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61026a610381366004612109565b610913565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60006103b682610ab0565b600380546103d49061216e565b80601f01602080910402602001604051908101604052809291908181526020018280546104009061216e565b801561044d5780601f106104225761010080835404028352916020019161044d565b820191906000526020600020905b81548152906001019060200180831161043057829003601f168201915b505050505081565b6060600261046283610b0c565b6040516020016104739291906121dd565b6040516020818303038152906040529050919050565b6040805180820190915260045473ffffffffffffffffffffffffffffffffffffffff1680825260055460208301819052600092839290916103e8906104ce9087612319565b6104d89190612330565b92509250509250929050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610538575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6105c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f520000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610667576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161019e565b61067385858585610c6c565b610681858585855a86610ed1565b5050505050565b61069383838361105a565b505050565b6060815183511461072b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161019e565b6000835167ffffffffffffffff81111561074757610747611bb2565b604051908082528060200260200182016040528015610770578160200160208202803683370190505b50905060005b8451811015610830576000808683815181106107945761079461236b565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008583815181106107ea576107ea61236b565b60200260200101518152602001908152602001600020548282815181106108135761081361236b565b6020908102919091010152806108288161239a565b915050610776565b509392505050565b600280546103d49061216e565b61084f82826110f8565b5050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b6108f684848484611278565b50505050565b610693838383611320565b6108f6848484846114ec565b3373ffffffffffffffffffffffffffffffffffffffff86161480610967575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6109f3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161019e565b73ffffffffffffffffffffffffffffffffffffffff8416610a96576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161019e565b610aa2858585856116c2565b610681858585855a8661179d565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601610b0357506001919050565b6103b68261191c565b606081600003610b4f57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610b795780610b638161239a565b9150610b729050600a83612330565b9150610b53565b60008167ffffffffffffffff811115610b9457610b94611bb2565b6040519080825280601f01601f191660200182016040528015610bbe576020820181803683370190505b509050815b8515610c6357610bd46001826123d2565b90506000610be3600a88612330565b610bee90600a612319565b610bf890886123d2565b610c039060306123e5565b905060008160f81b905080848481518110610c2057610c2061236b565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610c5a600a89612330565b97505050610bc3565b50949350505050565b8051825114610cfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161019e565b815160005b81811015610e4b57828181518110610d1c57610d1c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610d7657610d7661236b565b602002602001015181526020019081526020016000206000828254610d9b91906123d2565b92505081905550828181518110610db457610db461236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000868481518110610e0e57610e0e61236b565b602002602001015181526020019081526020016000206000828254610e3391906123fe565b90915550819050610e438161239a565b915050610d02565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610ec2929190612411565b60405180910390a45050505050565b610ef08573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610f39959493929190612436565b60206040518083038160008887f1158015610f58573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f7d91906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161019e565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906110989084906123d2565b9091555050604080518381526020810183905260009173ffffffffffffffffffffffffffffffffffffffff86169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4505050565b73ffffffffffffffffffffffffffffffffffffffff821661119b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603160248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f20524543495049454e545f49535f307830000000000000000000000000000000606482015260840161019e565b6103e881111561122d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f45524332393831476c6f62616c235f736574476c6f62616c526f79616c74793a60448201527f204645455f49535f41424f56455f3130305f50455243454e5400000000000000606482015260840161019e565b600480547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9390931692909217909155600555565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320868452909152812080548492906112b69084906123fe565b9091555050604080518481526020810184905273ffffffffffffffffffffffffffffffffffffffff86169160009133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a46108f660008585855a8661179d565b8151815181146113b2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684275726e3a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b60005b81811015611466578281815181106113cf576113cf61236b565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106114295761142961236b565b60200260200101518152602001908152602001600020600082825461144e91906123d2565b9091555081905061145e8161239a565b9150506113b5565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516114de929190612411565b60405180910390a450505050565b815183511461157d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f455243313135354d696e744275726e2362617463684d696e743a20494e56414c60448201527f49445f4152524159535f4c454e47544800000000000000000000000000000000606482015260840161019e565b825160005b818110156116335783818151811061159c5761159c61236b565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008784815181106115f6576115f661236b565b60200260200101518152602001908152602001600020600082825461161b91906123fe565b9091555081905061162b8161239a565b915050611582565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb87876040516116ab929190612411565b60405180910390a461068160008686865a87610ed1565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260208181526040808320858452909152812080548392906117009084906123d2565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600090815260208181526040808320858452909152812080548392906117439084906123fe565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6291016114de565b6117bc8573ffffffffffffffffffffffffffffffffffffffff16611927565b156110525760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016118059594939291906124be565b60206040518083038160008887f1158015611824573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061184991906124a1565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014611050576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161019e565b60006103b682611961565b6000813f801580159061195a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016119b457506001919050565b6103b68260007f264985da000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831601611a0b57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146103b6565b803573ffffffffffffffffffffffffffffffffffffffff81168114611a7957600080fd5b919050565b60008060408385031215611a9157600080fd5b611a9a83611a55565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114611ad657600080fd5b50565b600060208284031215611aeb57600080fd5b813561195a81611aa8565b60005b83811015611b11578181015183820152602001611af9565b50506000910152565b60008151808452611b32816020860160208601611af6565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061195a6020830184611b1a565b600060208284031215611b8957600080fd5b5035919050565b60008060408385031215611ba357600080fd5b50508035926020909101359150565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611c2857611c28611bb2565b604052919050565b600067ffffffffffffffff821115611c4a57611c4a611bb2565b5060051b60200190565b600082601f830112611c6557600080fd5b81356020611c7a611c7583611c30565b611be1565b82815260059290921b84018101918181019086841115611c9957600080fd5b8286015b84811015611cb45780358352918301918301611c9d565b509695505050505050565b600082601f830112611cd057600080fd5b813567ffffffffffffffff811115611cea57611cea611bb2565b611d1b60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601611be1565b818152846020838601011115611d3057600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215611d6557600080fd5b611d6e86611a55565b9450611d7c60208701611a55565b9350604086013567ffffffffffffffff80821115611d9957600080fd5b611da589838a01611c54565b94506060880135915080821115611dbb57600080fd5b611dc789838a01611c54565b93506080880135915080821115611ddd57600080fd5b50611dea88828901611cbf565b9150509295509295909350565b600080600060608486031215611e0c57600080fd5b611e1584611a55565b95602085013595506040909401359392505050565b60008060408385031215611e3d57600080fd5b823567ffffffffffffffff80821115611e5557600080fd5b818501915085601f830112611e6957600080fd5b81356020611e79611c7583611c30565b82815260059290921b84018101918181019089841115611e9857600080fd5b948201945b83861015611ebd57611eae86611a55565b82529482019490820190611e9d565b96505086013592505080821115611ed357600080fd5b50611ee085828601611c54565b9150509250929050565b600081518084526020808501945080840160005b83811015611f1a57815187529582019590820190600101611efe565b509495945050505050565b60208152600061195a6020830184611eea565b60008060408385031215611f4b57600080fd5b611f5483611a55565b915060208301358015158114611f6957600080fd5b809150509250929050565b60008060008060808587031215611f8a57600080fd5b611f9385611a55565b93506020850135925060408501359150606085013567ffffffffffffffff811115611fbd57600080fd5b611fc987828801611cbf565b91505092959194509250565b600080600060608486031215611fea57600080fd5b611ff384611a55565b9250602084013567ffffffffffffffff8082111561201057600080fd5b61201c87838801611c54565b9350604086013591508082111561203257600080fd5b5061203f86828701611c54565b9150509250925092565b6000806000806080858703121561205f57600080fd5b61206885611a55565b9350602085013567ffffffffffffffff8082111561208557600080fd5b61209188838901611c54565b945060408701359150808211156120a757600080fd5b6120b388838901611c54565b935060608701359150808211156120c957600080fd5b50611fc987828801611cbf565b600080604083850312156120e957600080fd5b6120f283611a55565b915061210060208401611a55565b90509250929050565b600080600080600060a0868803121561212157600080fd5b61212a86611a55565b945061213860208701611a55565b93506040860135925060608601359150608086013567ffffffffffffffff81111561216257600080fd5b611dea88828901611cbf565b600181811c9082168061218257607f821691505b6020821081036121bb577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516121d3818560208601611af6565b9290920192915050565b600080845481600182811c9150808316806121f957607f831692505b60208084108203612231577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b8180156122455760018114612278576122a5565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528415158502890196506122a5565b60008b81526020902060005b8681101561229d5781548b820152908501908301612284565b505084890196505b5050505050506122e16122b882866121c1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b80820281158282048414176103b6576103b66122ea565b600082612366577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036123cb576123cb6122ea565b5060010190565b818103818111156103b6576103b66122ea565b60ff81811683821601908111156103b6576103b66122ea565b808201808211156103b6576103b66122ea565b6040815260006124246040830185611eea565b82810360208401526122e18185611eea565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261246f60a0830186611eea565b82810360608401526124818186611eea565b905082810360808401526124958185611b1a565b98975050505050505050565b6000602082840312156124b357600080fd5b815161195a81611aa8565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261250360a0830184611b1a565b97965050505050505056fea2646970667358221220fa058f8fd77930ac8ac2c9a8ce1b170bb29eb7c2128de69c031823e9f139562264736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/mocks/OwnableMock.sol/OwnableMock.json b/src/artifacts/contracts/mocks/OwnableMock.sol/OwnableMock.json index d79287c..9bbf9e3 100644 --- a/src/artifacts/contracts/mocks/OwnableMock.sol/OwnableMock.json +++ b/src/artifacts/contracts/mocks/OwnableMock.sol/OwnableMock.json @@ -63,8 +63,8 @@ "type": "function" } ], - "bytecode": "0x60806040526000600155600060025534801561001a57600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610404806100816000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063776e8c30146100515780638da5cb5b1461005b578063aae7aa4b14610087578063f2fde38b1461008f575b600080fd5b6100596100a2565b005b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100596100bc565b61005961009d366004610351565b61017a565b6001600260008282546100b5919061038e565b9091555050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60018060008282546100b5919061038e565b60005473ffffffffffffffffffffffffffffffffffffffff163314610221576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e45520000000000000000000000000000000000000000000000000000606482015260840161015f565b73ffffffffffffffffffffffffffffffffffffffff81166102c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161015f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561036357600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461038757600080fd5b9392505050565b808201808211156103c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291505056fea2646970667358221220caca115c04a288bbb642cca5e5d8c888db00f400a6d9b8060fce873f71e67dd964736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c8063776e8c30146100515780638da5cb5b1461005b578063aae7aa4b14610087578063f2fde38b1461008f575b600080fd5b6100596100a2565b005b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100596100bc565b61005961009d366004610351565b61017a565b6001600260008282546100b5919061038e565b9091555050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60018060008282546100b5919061038e565b60005473ffffffffffffffffffffffffffffffffffffffff163314610221576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e45520000000000000000000000000000000000000000000000000000606482015260840161015f565b73ffffffffffffffffffffffffffffffffffffffff81166102c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161015f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561036357600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461038757600080fd5b9392505050565b808201808211156103c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291505056fea2646970667358221220caca115c04a288bbb642cca5e5d8c888db00f400a6d9b8060fce873f71e67dd964736f6c63430008120033", + "bytecode": "0x60806040526000600155600060025534801561001a57600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3610404806100816000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063776e8c30146100515780638da5cb5b1461005b578063aae7aa4b14610087578063f2fde38b1461008f575b600080fd5b6100596100a2565b005b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100596100bc565b61005961009d366004610351565b61017a565b6001600260008282546100b5919061038e565b9091555050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60018060008282546100b5919061038e565b60005473ffffffffffffffffffffffffffffffffffffffff163314610221576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e45520000000000000000000000000000000000000000000000000000606482015260840161015f565b73ffffffffffffffffffffffffffffffffffffffff81166102c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161015f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561036357600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461038757600080fd5b9392505050565b808201808211156103c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291505056fea2646970667358221220215243c83440a734bd5320b037685c098161b47d238ce78f571947f111fe261764736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c8063776e8c30146100515780638da5cb5b1461005b578063aae7aa4b14610087578063f2fde38b1461008f575b600080fd5b6100596100a2565b005b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100596100bc565b61005961009d366004610351565b61017a565b6001600260008282546100b5919061038e565b9091555050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610168576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b60018060008282546100b5919061038e565b60005473ffffffffffffffffffffffffffffffffffffffff163314610221576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e45520000000000000000000000000000000000000000000000000000606482015260840161015f565b73ffffffffffffffffffffffffffffffffffffffff81166102c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161015f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561036357600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461038757600080fd5b9392505050565b808201808211156103c8577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291505056fea2646970667358221220215243c83440a734bd5320b037685c098161b47d238ce78f571947f111fe261764736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/tokens/ERC1155/ERC1155.sol/ERC1155.json b/src/artifacts/contracts/tokens/ERC1155/ERC1155.sol/ERC1155.json index ae298df..e1c6c41 100644 --- a/src/artifacts/contracts/tokens/ERC1155/ERC1155.sol/ERC1155.json +++ b/src/artifacts/contracts/tokens/ERC1155/ERC1155.sol/ERC1155.json @@ -278,8 +278,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122040a1c6c05ac4bbe8b32151562985adbf53e897a07afb7ec6813a935a60027d3664736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122040a1c6c05ac4bbe8b32151562985adbf53e897a07afb7ec6813a935a60027d3664736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122022132ab70f1f426bc8000de5d7175d05428dd29b7b476afc03e31a9029f2bfee64736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122022132ab70f1f426bc8000de5d7175d05428dd29b7b476afc03e31a9029f2bfee64736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/tokens/ERC1155/ERC1155Meta.sol/ERC1155Meta.json b/src/artifacts/contracts/tokens/ERC1155/ERC1155Meta.sol/ERC1155Meta.json index 8177694..80978e8 100644 --- a/src/artifacts/contracts/tokens/ERC1155/ERC1155Meta.sol/ERC1155Meta.json +++ b/src/artifacts/contracts/tokens/ERC1155/ERC1155Meta.sol/ERC1155Meta.json @@ -459,8 +459,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50613170806100206000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c8063a3d4926e11610081578063f242432a1161005b578063f242432a1461020e578063f5d4c82014610221578063fa4e12d71461023457600080fd5b8063a3d4926e1461019f578063ce0b514b146101b2578063e985e9c5146101c557600080fd5b80632eb2c2d6116100b25780632eb2c2d6146101575780634e1273f41461016c578063a22cb4651461018c57600080fd5b8062fdd58e146100d857806301ffc9a7146100fe5780632d0335ab14610121575b600080fd5b6100eb6100e6366004612509565b610247565b6040519081526020015b60405180910390f35b61011161010c366004612563565b61027d565b60405190151581526020016100f5565b6100eb61012f366004612580565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61016a610165366004612741565b61031a565b005b61017f61017a3660046127ef565b6104c3565b6040516100f591906128ec565b61016a61019a36600461290d565b610663565b61016a6101ad366004612946565b6106fa565b61016a6101c0366004612a07565b61092c565b6101116101d3366004612a81565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61016a61021c366004612aaf565b610a9a565b61016a61022f366004612b18565b610c37565b610111610242366004612b87565b610d8e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016102d057506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610277565b3373ffffffffffffffffffffffffffffffffffffffff8616148061036e575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166104a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016103f6565b6104ae858585856115d7565b6104bc858585855a8661183c565b5050505050565b60608151835114610556576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016103f6565b6000835167ffffffffffffffff8111156105725761057261259d565b60405190808252806020026020018201604052801561059b578160200160208202803683370190505b50905060005b845181101561065b576000808683815181106105bf576105bf612c07565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061061557610615612c07565b602002602001015181526020019081526020016000205482828151811061063e5761063e612c07565b60209081029190910101528061065381612c65565b9150506105a1565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016103f6565b60606107e060405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b60006108c289857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c60405160200161081e9190612c9d565b604051602081830303815290604052805190602001208c6040516020016108459190612c9d565b604051602081830303815290604052805190602001208c61086757600061086a565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b6040516020818303038152906040526119bb565b90506108d0898989896115d7565b841561091357808060200190518101906108ea9190612dcb565b80945081935050506109048989898986602001518861183c565b61090e8983611c4b565b610921565b610921898989895a8661183c565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff85166109cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016103f6565b6060610a1260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a4a89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c61086757600061086a565b9050610a5889898989611fbe565b8415610a8c5780806020019051810190610a729190612dcb565b8094508193505050610904898989898660200151886120a2565b610921898989895a866120a2565b3373ffffffffffffffffffffffffffffffffffffffff86161480610aee575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016103f6565b73ffffffffffffffffffffffffffffffffffffffff8416610c1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016103f6565b610c2985858585611fbe565b6104bc858585855a866120a2565b6000610cc286837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610c6d576000610c70565b60015b89610c7c576000610c7f565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0016108ae565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610d8657600081806020019051810190610d789190612e25565b9050610d848782611c4b565b505b505050505050565b600080825111610e46576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016103f6565b73ffffffffffffffffffffffffffffffffffffffff8516610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016103f6565b6000610ef483612221565b60f81c905060058110610f89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b60008160ff166005811115610fa057610fa0612e5a565b9050600080808080856005811115610fba57610fba612e5a565b03611047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016103f6565b600185600581111561105b5761105b612e5a565b036111cd5787516061146110f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b6110fc886000612324565b9250611109886020612324565b91508760408151811061111e5761111e612c07565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561117b573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506115cf9650505050505050565b60028560058111156111e1576111e1612e5a565b03611347578751606114611277576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b611282886000612324565b925061128f886020612324565b9150876040815181106112a4576112a4612c07565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001611159565b600385600581111561135b5761135b612e5a565b03611447576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906113b4908c908c90600401612ed3565b602060405180830381865afa1580156113d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b600485600581111561145b5761145b612e5a565b03611547576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906114b4908d908c90600401612f1e565b602060405180830381865afa1580156114d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b949350505050565b8051825114611668576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016103f6565b815160005b818110156117b65782818151811061168757611687612c07565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106116e1576116e1612c07565b6020026020010151815260200190815260200160002060008282546117069190612f37565b9250508190555082818151811061171f5761171f612c07565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061177957611779612c07565b60200260200101518152602001908152602001600020600082825461179e9190612f4a565b909155508190506117ae81612c65565b91505061166d565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161182d929190612f5d565b60405180910390a45050505050565b61185b8573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016118a4959493929190612f82565b60206040518083038160008887f11580156118c3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118e89190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016103f6565b606080838060200190518101906119d29190612fed565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611a0a836041612324565b9050818110801590611a255750611a22826064612f4a565b81105b611ab1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016103f6565b6000611aed86838780519060200120604051602001611ad293929190613024565b60405160208183030381529060405280519060200120612411565b90506000868387604051602001611b069392919061304b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611b41836001612f4a565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611b96856001612f4a565b60405190815260200160405180910390a2611bb389838388610d8e565b611c3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016103f6565b50505050509392505050565b6000611c5a8260600151612221565b60f81c905060028110611cef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016103f6565b60008160ff166002811115611d0657611d06612e5a565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff1615611d3c578660400151611d3e565b335b92506000856002811115611d5457611d54612e5a565b03611e6b578660600151806020019051810190611d719190613082565b90945091503073ffffffffffffffffffffffffffffffffffffffff851603611dc157611d9f88848484611fbe565b611dbc8884845a85604051806020016040528060008152506120a2565b611fb4565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b158015611e4e57600080fd5b505af1158015611e62573d6000803e3d6000fd5b50505050611fb4565b8660600151806020019051810190611e8391906130b0565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015611f04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2891906130cd565b611fb4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016103f6565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611ffc908490612f37565b909155505073ffffffffffffffffffffffffffffffffffffffff83166000908152602081815260408083208584529091528120805483929061203f908490612f4a565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6120c18573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b815260040161210a9594939291906130ea565b60206040518083038160008887f1158015612129573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061214e9190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016103f6565b6000808251116122b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016103f6565b81600183516122c29190612f37565b815181106122d2576122d2612c07565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612331826020612f4a565b835110156123c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016103f6565b6123cc602083612f4a565b929092015192915050565b6000813f801580159061240a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b3060405160200161249e92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016124c793929190613024565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461250657600080fd5b50565b6000806040838503121561251c57600080fd5b8235612527816124e4565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461250657600080fd5b60006020828403121561257557600080fd5b813561240a81612535565b60006020828403121561259257600080fd5b813561240a816124e4565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156126135761261361259d565b604052919050565b600067ffffffffffffffff8211156126355761263561259d565b5060051b60200190565b600082601f83011261265057600080fd5b813560206126656126608361261b565b6125cc565b82815260059290921b8401810191818101908684111561268457600080fd5b8286015b8481101561269f5780358352918301918301612688565b509695505050505050565b600067ffffffffffffffff8211156126c4576126c461259d565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f83011261270157600080fd5b813561270f612660826126aa565b81815284602083860101111561272457600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561275957600080fd5b8535612764816124e4565b94506020860135612774816124e4565b9350604086013567ffffffffffffffff8082111561279157600080fd5b61279d89838a0161263f565b945060608801359150808211156127b357600080fd5b6127bf89838a0161263f565b935060808801359150808211156127d557600080fd5b506127e2888289016126f0565b9150509295509295909350565b6000806040838503121561280257600080fd5b823567ffffffffffffffff8082111561281a57600080fd5b818501915085601f83011261282e57600080fd5b8135602061283e6126608361261b565b82815260059290921b8401810191818101908984111561285d57600080fd5b948201945b83861015612884578535612875816124e4565b82529482019490820190612862565b9650508601359250508082111561289a57600080fd5b506128a78582860161263f565b9150509250929050565b600081518084526020808501945080840160005b838110156128e1578151875295820195908201906001016128c5565b509495945050505050565b60208152600061240a60208301846128b1565b801515811461250657600080fd5b6000806040838503121561292057600080fd5b823561292b816124e4565b9150602083013561293b816128ff565b809150509250929050565b60008060008060008060c0878903121561295f57600080fd5b863561296a816124e4565b9550602087013561297a816124e4565b9450604087013567ffffffffffffffff8082111561299757600080fd5b6129a38a838b0161263f565b955060608901359150808211156129b957600080fd5b6129c58a838b0161263f565b9450608089013591506129d7826128ff565b90925060a088013590808211156129ed57600080fd5b506129fa89828a016126f0565b9150509295509295509295565b60008060008060008060c08789031215612a2057600080fd5b8635612a2b816124e4565b95506020870135612a3b816124e4565b945060408701359350606087013592506080870135612a59816128ff565b915060a087013567ffffffffffffffff811115612a7557600080fd5b6129fa89828a016126f0565b60008060408385031215612a9457600080fd5b8235612a9f816124e4565b9150602083013561293b816124e4565b600080600080600060a08688031215612ac757600080fd5b8535612ad2816124e4565b94506020860135612ae2816124e4565b93506040860135925060608601359150608086013567ffffffffffffffff811115612b0c57600080fd5b6127e2888289016126f0565b600080600080600060a08688031215612b3057600080fd5b8535612b3b816124e4565b94506020860135612b4b816124e4565b93506040860135612b5b816128ff565b92506060860135612b6b816128ff565b9150608086013567ffffffffffffffff811115612b0c57600080fd5b60008060008060808587031215612b9d57600080fd5b8435612ba8816124e4565b935060208501359250604085013567ffffffffffffffff80821115612bcc57600080fd5b612bd8888389016126f0565b93506060870135915080821115612bee57600080fd5b50612bfb878288016126f0565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c9657612c96612c36565b5060010190565b815160009082906020808601845b83811015612cc757815185529382019390820190600101612cab565b50929695505050505050565b60005b83811015612cee578181015183820152602001612cd6565b50506000910152565b600082601f830112612d0857600080fd5b8151612d16612660826126aa565b818152846020838601011115612d2b57600080fd5b6115cf826020830160208701612cd3565b600060808284031215612d4e57600080fd5b6040516080810167ffffffffffffffff8282108183111715612d7257612d7261259d565b81604052829350845183526020850151602084015260408501519150612d97826124e4565b8160408401526060850151915080821115612db157600080fd5b50612dbe85828601612cf7565b6060830152505092915050565b60008060408385031215612dde57600080fd5b825167ffffffffffffffff80821115612df657600080fd5b612e0286838701612d3c565b93506020850151915080821115612e1857600080fd5b506128a785828601612cf7565b600060208284031215612e3757600080fd5b815167ffffffffffffffff811115612e4e57600080fd5b6115cf84828501612d3c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60008151808452612ea1816020860160208601612cd3565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b604081526000612ee66040830185612e89565b8281036020840152612ef88185612e89565b95945050505050565b600060208284031215612f1357600080fd5b815161240a81612535565b8281526040602082015260006115cf6040830184612e89565b8181038181111561027757610277612c36565b8082018082111561027757610277612c36565b604081526000612f7060408301856128b1565b8281036020840152612ef881856128b1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152612fbb60a08301866128b1565b8281036060840152612fcd81866128b1565b90508281036080840152612fe18185612e89565b98975050505050505050565b6000806040838503121561300057600080fd5b825167ffffffffffffffff8082111561301857600080fd5b612e0286838701612cf7565b60008451613036818460208901612cd3565b91909101928352506020820152604001919050565b6000845161305d818460208901612cd3565b82018481528351613075816020808501908801612cd3565b0160200195945050505050565b6000806040838503121561309557600080fd5b82516130a0816124e4565b6020939093015192949293505050565b6000602082840312156130c257600080fd5b815161240a816124e4565b6000602082840312156130df57600080fd5b815161240a816128ff565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261312f60a0830184612e89565b97965050505050505056fea264697066735822122086a3f35157d4900c572b2aa788c7a477ce84e47257fd2a5ad0fa61917c44f41264736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100d35760003560e01c8063a3d4926e11610081578063f242432a1161005b578063f242432a1461020e578063f5d4c82014610221578063fa4e12d71461023457600080fd5b8063a3d4926e1461019f578063ce0b514b146101b2578063e985e9c5146101c557600080fd5b80632eb2c2d6116100b25780632eb2c2d6146101575780634e1273f41461016c578063a22cb4651461018c57600080fd5b8062fdd58e146100d857806301ffc9a7146100fe5780632d0335ab14610121575b600080fd5b6100eb6100e6366004612509565b610247565b6040519081526020015b60405180910390f35b61011161010c366004612563565b61027d565b60405190151581526020016100f5565b6100eb61012f366004612580565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61016a610165366004612741565b61031a565b005b61017f61017a3660046127ef565b6104c3565b6040516100f591906128ec565b61016a61019a36600461290d565b610663565b61016a6101ad366004612946565b6106fa565b61016a6101c0366004612a07565b61092c565b6101116101d3366004612a81565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61016a61021c366004612aaf565b610a9a565b61016a61022f366004612b18565b610c37565b610111610242366004612b87565b610d8e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016102d057506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610277565b3373ffffffffffffffffffffffffffffffffffffffff8616148061036e575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166104a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016103f6565b6104ae858585856115d7565b6104bc858585855a8661183c565b5050505050565b60608151835114610556576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016103f6565b6000835167ffffffffffffffff8111156105725761057261259d565b60405190808252806020026020018201604052801561059b578160200160208202803683370190505b50905060005b845181101561065b576000808683815181106105bf576105bf612c07565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061061557610615612c07565b602002602001015181526020019081526020016000205482828151811061063e5761063e612c07565b60209081029190910101528061065381612c65565b9150506105a1565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016103f6565b60606107e060405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b60006108c289857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c60405160200161081e9190612c9d565b604051602081830303815290604052805190602001208c6040516020016108459190612c9d565b604051602081830303815290604052805190602001208c61086757600061086a565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b6040516020818303038152906040526119bb565b90506108d0898989896115d7565b841561091357808060200190518101906108ea9190612dcb565b80945081935050506109048989898986602001518861183c565b61090e8983611c4b565b610921565b610921898989895a8661183c565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff85166109cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016103f6565b6060610a1260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a4a89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c61086757600061086a565b9050610a5889898989611fbe565b8415610a8c5780806020019051810190610a729190612dcb565b8094508193505050610904898989898660200151886120a2565b610921898989895a866120a2565b3373ffffffffffffffffffffffffffffffffffffffff86161480610aee575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016103f6565b73ffffffffffffffffffffffffffffffffffffffff8416610c1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016103f6565b610c2985858585611fbe565b6104bc858585855a866120a2565b6000610cc286837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610c6d576000610c70565b60015b89610c7c576000610c7f565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0016108ae565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610d8657600081806020019051810190610d789190612e25565b9050610d848782611c4b565b505b505050505050565b600080825111610e46576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016103f6565b73ffffffffffffffffffffffffffffffffffffffff8516610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016103f6565b6000610ef483612221565b60f81c905060058110610f89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b60008160ff166005811115610fa057610fa0612e5a565b9050600080808080856005811115610fba57610fba612e5a565b03611047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016103f6565b600185600581111561105b5761105b612e5a565b036111cd5787516061146110f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b6110fc886000612324565b9250611109886020612324565b91508760408151811061111e5761111e612c07565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561117b573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506115cf9650505050505050565b60028560058111156111e1576111e1612e5a565b03611347578751606114611277576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b611282886000612324565b925061128f886020612324565b9150876040815181106112a4576112a4612c07565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001611159565b600385600581111561135b5761135b612e5a565b03611447576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906113b4908c908c90600401612ed3565b602060405180830381865afa1580156113d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b600485600581111561145b5761145b612e5a565b03611547576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906114b4908d908c90600401612f1e565b602060405180830381865afa1580156114d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b949350505050565b8051825114611668576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016103f6565b815160005b818110156117b65782818151811061168757611687612c07565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106116e1576116e1612c07565b6020026020010151815260200190815260200160002060008282546117069190612f37565b9250508190555082818151811061171f5761171f612c07565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061177957611779612c07565b60200260200101518152602001908152602001600020600082825461179e9190612f4a565b909155508190506117ae81612c65565b91505061166d565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161182d929190612f5d565b60405180910390a45050505050565b61185b8573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016118a4959493929190612f82565b60206040518083038160008887f11580156118c3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118e89190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016103f6565b606080838060200190518101906119d29190612fed565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611a0a836041612324565b9050818110801590611a255750611a22826064612f4a565b81105b611ab1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016103f6565b6000611aed86838780519060200120604051602001611ad293929190613024565b60405160208183030381529060405280519060200120612411565b90506000868387604051602001611b069392919061304b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611b41836001612f4a565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611b96856001612f4a565b60405190815260200160405180910390a2611bb389838388610d8e565b611c3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016103f6565b50505050509392505050565b6000611c5a8260600151612221565b60f81c905060028110611cef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016103f6565b60008160ff166002811115611d0657611d06612e5a565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff1615611d3c578660400151611d3e565b335b92506000856002811115611d5457611d54612e5a565b03611e6b578660600151806020019051810190611d719190613082565b90945091503073ffffffffffffffffffffffffffffffffffffffff851603611dc157611d9f88848484611fbe565b611dbc8884845a85604051806020016040528060008152506120a2565b611fb4565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b158015611e4e57600080fd5b505af1158015611e62573d6000803e3d6000fd5b50505050611fb4565b8660600151806020019051810190611e8391906130b0565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015611f04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2891906130cd565b611fb4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016103f6565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611ffc908490612f37565b909155505073ffffffffffffffffffffffffffffffffffffffff83166000908152602081815260408083208584529091528120805483929061203f908490612f4a565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6120c18573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b815260040161210a9594939291906130ea565b60206040518083038160008887f1158015612129573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061214e9190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016103f6565b6000808251116122b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016103f6565b81600183516122c29190612f37565b815181106122d2576122d2612c07565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612331826020612f4a565b835110156123c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016103f6565b6123cc602083612f4a565b929092015192915050565b6000813f801580159061240a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b3060405160200161249e92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016124c793929190613024565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461250657600080fd5b50565b6000806040838503121561251c57600080fd5b8235612527816124e4565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461250657600080fd5b60006020828403121561257557600080fd5b813561240a81612535565b60006020828403121561259257600080fd5b813561240a816124e4565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156126135761261361259d565b604052919050565b600067ffffffffffffffff8211156126355761263561259d565b5060051b60200190565b600082601f83011261265057600080fd5b813560206126656126608361261b565b6125cc565b82815260059290921b8401810191818101908684111561268457600080fd5b8286015b8481101561269f5780358352918301918301612688565b509695505050505050565b600067ffffffffffffffff8211156126c4576126c461259d565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f83011261270157600080fd5b813561270f612660826126aa565b81815284602083860101111561272457600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561275957600080fd5b8535612764816124e4565b94506020860135612774816124e4565b9350604086013567ffffffffffffffff8082111561279157600080fd5b61279d89838a0161263f565b945060608801359150808211156127b357600080fd5b6127bf89838a0161263f565b935060808801359150808211156127d557600080fd5b506127e2888289016126f0565b9150509295509295909350565b6000806040838503121561280257600080fd5b823567ffffffffffffffff8082111561281a57600080fd5b818501915085601f83011261282e57600080fd5b8135602061283e6126608361261b565b82815260059290921b8401810191818101908984111561285d57600080fd5b948201945b83861015612884578535612875816124e4565b82529482019490820190612862565b9650508601359250508082111561289a57600080fd5b506128a78582860161263f565b9150509250929050565b600081518084526020808501945080840160005b838110156128e1578151875295820195908201906001016128c5565b509495945050505050565b60208152600061240a60208301846128b1565b801515811461250657600080fd5b6000806040838503121561292057600080fd5b823561292b816124e4565b9150602083013561293b816128ff565b809150509250929050565b60008060008060008060c0878903121561295f57600080fd5b863561296a816124e4565b9550602087013561297a816124e4565b9450604087013567ffffffffffffffff8082111561299757600080fd5b6129a38a838b0161263f565b955060608901359150808211156129b957600080fd5b6129c58a838b0161263f565b9450608089013591506129d7826128ff565b90925060a088013590808211156129ed57600080fd5b506129fa89828a016126f0565b9150509295509295509295565b60008060008060008060c08789031215612a2057600080fd5b8635612a2b816124e4565b95506020870135612a3b816124e4565b945060408701359350606087013592506080870135612a59816128ff565b915060a087013567ffffffffffffffff811115612a7557600080fd5b6129fa89828a016126f0565b60008060408385031215612a9457600080fd5b8235612a9f816124e4565b9150602083013561293b816124e4565b600080600080600060a08688031215612ac757600080fd5b8535612ad2816124e4565b94506020860135612ae2816124e4565b93506040860135925060608601359150608086013567ffffffffffffffff811115612b0c57600080fd5b6127e2888289016126f0565b600080600080600060a08688031215612b3057600080fd5b8535612b3b816124e4565b94506020860135612b4b816124e4565b93506040860135612b5b816128ff565b92506060860135612b6b816128ff565b9150608086013567ffffffffffffffff811115612b0c57600080fd5b60008060008060808587031215612b9d57600080fd5b8435612ba8816124e4565b935060208501359250604085013567ffffffffffffffff80821115612bcc57600080fd5b612bd8888389016126f0565b93506060870135915080821115612bee57600080fd5b50612bfb878288016126f0565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c9657612c96612c36565b5060010190565b815160009082906020808601845b83811015612cc757815185529382019390820190600101612cab565b50929695505050505050565b60005b83811015612cee578181015183820152602001612cd6565b50506000910152565b600082601f830112612d0857600080fd5b8151612d16612660826126aa565b818152846020838601011115612d2b57600080fd5b6115cf826020830160208701612cd3565b600060808284031215612d4e57600080fd5b6040516080810167ffffffffffffffff8282108183111715612d7257612d7261259d565b81604052829350845183526020850151602084015260408501519150612d97826124e4565b8160408401526060850151915080821115612db157600080fd5b50612dbe85828601612cf7565b6060830152505092915050565b60008060408385031215612dde57600080fd5b825167ffffffffffffffff80821115612df657600080fd5b612e0286838701612d3c565b93506020850151915080821115612e1857600080fd5b506128a785828601612cf7565b600060208284031215612e3757600080fd5b815167ffffffffffffffff811115612e4e57600080fd5b6115cf84828501612d3c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60008151808452612ea1816020860160208601612cd3565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b604081526000612ee66040830185612e89565b8281036020840152612ef88185612e89565b95945050505050565b600060208284031215612f1357600080fd5b815161240a81612535565b8281526040602082015260006115cf6040830184612e89565b8181038181111561027757610277612c36565b8082018082111561027757610277612c36565b604081526000612f7060408301856128b1565b8281036020840152612ef881856128b1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152612fbb60a08301866128b1565b8281036060840152612fcd81866128b1565b90508281036080840152612fe18185612e89565b98975050505050505050565b6000806040838503121561300057600080fd5b825167ffffffffffffffff8082111561301857600080fd5b612e0286838701612cf7565b60008451613036818460208901612cd3565b91909101928352506020820152604001919050565b6000845161305d818460208901612cd3565b82018481528351613075816020808501908801612cd3565b0160200195945050505050565b6000806040838503121561309557600080fd5b82516130a0816124e4565b6020939093015192949293505050565b6000602082840312156130c257600080fd5b815161240a816124e4565b6000602082840312156130df57600080fd5b815161240a816128ff565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261312f60a0830184612e89565b97965050505050505056fea264697066735822122086a3f35157d4900c572b2aa788c7a477ce84e47257fd2a5ad0fa61917c44f41264736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b50613170806100206000396000f3fe608060405234801561001057600080fd5b50600436106100d35760003560e01c8063a3d4926e11610081578063f242432a1161005b578063f242432a1461020e578063f5d4c82014610221578063fa4e12d71461023457600080fd5b8063a3d4926e1461019f578063ce0b514b146101b2578063e985e9c5146101c557600080fd5b80632eb2c2d6116100b25780632eb2c2d6146101575780634e1273f41461016c578063a22cb4651461018c57600080fd5b8062fdd58e146100d857806301ffc9a7146100fe5780632d0335ab14610121575b600080fd5b6100eb6100e6366004612509565b610247565b6040519081526020015b60405180910390f35b61011161010c366004612563565b61027d565b60405190151581526020016100f5565b6100eb61012f366004612580565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61016a610165366004612741565b61031a565b005b61017f61017a3660046127ef565b6104c3565b6040516100f591906128ec565b61016a61019a36600461290d565b610663565b61016a6101ad366004612946565b6106fa565b61016a6101c0366004612a07565b61092c565b6101116101d3366004612a81565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61016a61021c366004612aaf565b610a9a565b61016a61022f366004612b18565b610c37565b610111610242366004612b87565b610d8e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016102d057506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610277565b3373ffffffffffffffffffffffffffffffffffffffff8616148061036e575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166104a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016103f6565b6104ae858585856115d7565b6104bc858585855a8661183c565b5050505050565b60608151835114610556576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016103f6565b6000835167ffffffffffffffff8111156105725761057261259d565b60405190808252806020026020018201604052801561059b578160200160208202803683370190505b50905060005b845181101561065b576000808683815181106105bf576105bf612c07565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061061557610615612c07565b602002602001015181526020019081526020016000205482828151811061063e5761063e612c07565b60209081029190910101528061065381612c65565b9150506105a1565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016103f6565b60606107e060405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b60006108c289857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c60405160200161081e9190612c9d565b604051602081830303815290604052805190602001208c6040516020016108459190612c9d565b604051602081830303815290604052805190602001208c61086757600061086a565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b6040516020818303038152906040526119bb565b90506108d0898989896115d7565b841561091357808060200190518101906108ea9190612dcb565b80945081935050506109048989898986602001518861183c565b61090e8983611c4b565b610921565b610921898989895a8661183c565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff85166109cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016103f6565b6060610a1260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a4a89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c61086757600061086a565b9050610a5889898989611fbe565b8415610a8c5780806020019051810190610a729190612dcb565b8094508193505050610904898989898660200151886120a2565b610921898989895a866120a2565b3373ffffffffffffffffffffffffffffffffffffffff86161480610aee575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016103f6565b73ffffffffffffffffffffffffffffffffffffffff8416610c1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016103f6565b610c2985858585611fbe565b6104bc858585855a866120a2565b6000610cc286837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610c6d576000610c70565b60015b89610c7c576000610c7f565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0016108ae565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610d8657600081806020019051810190610d789190612e25565b9050610d848782611c4b565b505b505050505050565b600080825111610e46576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016103f6565b73ffffffffffffffffffffffffffffffffffffffff8516610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016103f6565b6000610ef483612221565b60f81c905060058110610f89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b60008160ff166005811115610fa057610fa0612e5a565b9050600080808080856005811115610fba57610fba612e5a565b03611047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016103f6565b600185600581111561105b5761105b612e5a565b036111cd5787516061146110f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b6110fc886000612324565b9250611109886020612324565b91508760408151811061111e5761111e612c07565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561117b573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506115cf9650505050505050565b60028560058111156111e1576111e1612e5a565b03611347578751606114611277576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b611282886000612324565b925061128f886020612324565b9150876040815181106112a4576112a4612c07565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001611159565b600385600581111561135b5761135b612e5a565b03611447576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906113b4908c908c90600401612ed3565b602060405180830381865afa1580156113d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b600485600581111561145b5761145b612e5a565b03611547576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906114b4908d908c90600401612f1e565b602060405180830381865afa1580156114d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b949350505050565b8051825114611668576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016103f6565b815160005b818110156117b65782818151811061168757611687612c07565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106116e1576116e1612c07565b6020026020010151815260200190815260200160002060008282546117069190612f37565b9250508190555082818151811061171f5761171f612c07565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061177957611779612c07565b60200260200101518152602001908152602001600020600082825461179e9190612f4a565b909155508190506117ae81612c65565b91505061166d565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161182d929190612f5d565b60405180910390a45050505050565b61185b8573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016118a4959493929190612f82565b60206040518083038160008887f11580156118c3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118e89190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016103f6565b606080838060200190518101906119d29190612fed565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611a0a836041612324565b9050818110801590611a255750611a22826064612f4a565b81105b611ab1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016103f6565b6000611aed86838780519060200120604051602001611ad293929190613024565b60405160208183030381529060405280519060200120612411565b90506000868387604051602001611b069392919061304b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611b41836001612f4a565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611b96856001612f4a565b60405190815260200160405180910390a2611bb389838388610d8e565b611c3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016103f6565b50505050509392505050565b6000611c5a8260600151612221565b60f81c905060028110611cef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016103f6565b60008160ff166002811115611d0657611d06612e5a565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff1615611d3c578660400151611d3e565b335b92506000856002811115611d5457611d54612e5a565b03611e6b578660600151806020019051810190611d719190613082565b90945091503073ffffffffffffffffffffffffffffffffffffffff851603611dc157611d9f88848484611fbe565b611dbc8884845a85604051806020016040528060008152506120a2565b611fb4565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b158015611e4e57600080fd5b505af1158015611e62573d6000803e3d6000fd5b50505050611fb4565b8660600151806020019051810190611e8391906130b0565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015611f04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2891906130cd565b611fb4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016103f6565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611ffc908490612f37565b909155505073ffffffffffffffffffffffffffffffffffffffff83166000908152602081815260408083208584529091528120805483929061203f908490612f4a565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6120c18573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b815260040161210a9594939291906130ea565b60206040518083038160008887f1158015612129573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061214e9190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016103f6565b6000808251116122b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016103f6565b81600183516122c29190612f37565b815181106122d2576122d2612c07565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612331826020612f4a565b835110156123c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016103f6565b6123cc602083612f4a565b929092015192915050565b6000813f801580159061240a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b3060405160200161249e92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016124c793929190613024565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461250657600080fd5b50565b6000806040838503121561251c57600080fd5b8235612527816124e4565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461250657600080fd5b60006020828403121561257557600080fd5b813561240a81612535565b60006020828403121561259257600080fd5b813561240a816124e4565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156126135761261361259d565b604052919050565b600067ffffffffffffffff8211156126355761263561259d565b5060051b60200190565b600082601f83011261265057600080fd5b813560206126656126608361261b565b6125cc565b82815260059290921b8401810191818101908684111561268457600080fd5b8286015b8481101561269f5780358352918301918301612688565b509695505050505050565b600067ffffffffffffffff8211156126c4576126c461259d565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f83011261270157600080fd5b813561270f612660826126aa565b81815284602083860101111561272457600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561275957600080fd5b8535612764816124e4565b94506020860135612774816124e4565b9350604086013567ffffffffffffffff8082111561279157600080fd5b61279d89838a0161263f565b945060608801359150808211156127b357600080fd5b6127bf89838a0161263f565b935060808801359150808211156127d557600080fd5b506127e2888289016126f0565b9150509295509295909350565b6000806040838503121561280257600080fd5b823567ffffffffffffffff8082111561281a57600080fd5b818501915085601f83011261282e57600080fd5b8135602061283e6126608361261b565b82815260059290921b8401810191818101908984111561285d57600080fd5b948201945b83861015612884578535612875816124e4565b82529482019490820190612862565b9650508601359250508082111561289a57600080fd5b506128a78582860161263f565b9150509250929050565b600081518084526020808501945080840160005b838110156128e1578151875295820195908201906001016128c5565b509495945050505050565b60208152600061240a60208301846128b1565b801515811461250657600080fd5b6000806040838503121561292057600080fd5b823561292b816124e4565b9150602083013561293b816128ff565b809150509250929050565b60008060008060008060c0878903121561295f57600080fd5b863561296a816124e4565b9550602087013561297a816124e4565b9450604087013567ffffffffffffffff8082111561299757600080fd5b6129a38a838b0161263f565b955060608901359150808211156129b957600080fd5b6129c58a838b0161263f565b9450608089013591506129d7826128ff565b90925060a088013590808211156129ed57600080fd5b506129fa89828a016126f0565b9150509295509295509295565b60008060008060008060c08789031215612a2057600080fd5b8635612a2b816124e4565b95506020870135612a3b816124e4565b945060408701359350606087013592506080870135612a59816128ff565b915060a087013567ffffffffffffffff811115612a7557600080fd5b6129fa89828a016126f0565b60008060408385031215612a9457600080fd5b8235612a9f816124e4565b9150602083013561293b816124e4565b600080600080600060a08688031215612ac757600080fd5b8535612ad2816124e4565b94506020860135612ae2816124e4565b93506040860135925060608601359150608086013567ffffffffffffffff811115612b0c57600080fd5b6127e2888289016126f0565b600080600080600060a08688031215612b3057600080fd5b8535612b3b816124e4565b94506020860135612b4b816124e4565b93506040860135612b5b816128ff565b92506060860135612b6b816128ff565b9150608086013567ffffffffffffffff811115612b0c57600080fd5b60008060008060808587031215612b9d57600080fd5b8435612ba8816124e4565b935060208501359250604085013567ffffffffffffffff80821115612bcc57600080fd5b612bd8888389016126f0565b93506060870135915080821115612bee57600080fd5b50612bfb878288016126f0565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c9657612c96612c36565b5060010190565b815160009082906020808601845b83811015612cc757815185529382019390820190600101612cab565b50929695505050505050565b60005b83811015612cee578181015183820152602001612cd6565b50506000910152565b600082601f830112612d0857600080fd5b8151612d16612660826126aa565b818152846020838601011115612d2b57600080fd5b6115cf826020830160208701612cd3565b600060808284031215612d4e57600080fd5b6040516080810167ffffffffffffffff8282108183111715612d7257612d7261259d565b81604052829350845183526020850151602084015260408501519150612d97826124e4565b8160408401526060850151915080821115612db157600080fd5b50612dbe85828601612cf7565b6060830152505092915050565b60008060408385031215612dde57600080fd5b825167ffffffffffffffff80821115612df657600080fd5b612e0286838701612d3c565b93506020850151915080821115612e1857600080fd5b506128a785828601612cf7565b600060208284031215612e3757600080fd5b815167ffffffffffffffff811115612e4e57600080fd5b6115cf84828501612d3c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60008151808452612ea1816020860160208601612cd3565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b604081526000612ee66040830185612e89565b8281036020840152612ef88185612e89565b95945050505050565b600060208284031215612f1357600080fd5b815161240a81612535565b8281526040602082015260006115cf6040830184612e89565b8181038181111561027757610277612c36565b8082018082111561027757610277612c36565b604081526000612f7060408301856128b1565b8281036020840152612ef881856128b1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152612fbb60a08301866128b1565b8281036060840152612fcd81866128b1565b90508281036080840152612fe18185612e89565b98975050505050505050565b6000806040838503121561300057600080fd5b825167ffffffffffffffff8082111561301857600080fd5b612e0286838701612cf7565b60008451613036818460208901612cd3565b91909101928352506020820152604001919050565b6000845161305d818460208901612cd3565b82018481528351613075816020808501908801612cd3565b0160200195945050505050565b6000806040838503121561309557600080fd5b82516130a0816124e4565b6020939093015192949293505050565b6000602082840312156130c257600080fd5b815161240a816124e4565b6000602082840312156130df57600080fd5b815161240a816128ff565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261312f60a0830184612e89565b97965050505050505056fea26469706673582212203f2d837641f4ab720ec8ebec0164637bd3435cd25c4966fbf64b1a973914da2464736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100d35760003560e01c8063a3d4926e11610081578063f242432a1161005b578063f242432a1461020e578063f5d4c82014610221578063fa4e12d71461023457600080fd5b8063a3d4926e1461019f578063ce0b514b146101b2578063e985e9c5146101c557600080fd5b80632eb2c2d6116100b25780632eb2c2d6146101575780634e1273f41461016c578063a22cb4651461018c57600080fd5b8062fdd58e146100d857806301ffc9a7146100fe5780632d0335ab14610121575b600080fd5b6100eb6100e6366004612509565b610247565b6040519081526020015b60405180910390f35b61011161010c366004612563565b61027d565b60405190151581526020016100f5565b6100eb61012f366004612580565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61016a610165366004612741565b61031a565b005b61017f61017a3660046127ef565b6104c3565b6040516100f591906128ec565b61016a61019a36600461290d565b610663565b61016a6101ad366004612946565b6106fa565b61016a6101c0366004612a07565b61092c565b6101116101d3366004612a81565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61016a61021c366004612aaf565b610a9a565b61016a61022f366004612b18565b610c37565b610111610242366004612b87565b610d8e565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016102d057506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610277565b3373ffffffffffffffffffffffffffffffffffffffff8616148061036e575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103ff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166104a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e540000000000000000000000000000000060648201526084016103f6565b6104ae858585856115d7565b6104bc858585855a8661183c565b5050505050565b60608151835114610556576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e475448000000000000000000000000000000000000000060648201526084016103f6565b6000835167ffffffffffffffff8111156105725761057261259d565b60405190808252806020026020018201604052801561059b578160200160208202803683370190505b50905060005b845181101561065b576000808683815181106105bf576105bf612c07565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061061557610615612c07565b602002602001015181526020019081526020016000205482828151811061063e5761063e612c07565b60209081029190910101528061065381612c65565b9150506105a1565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661079d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135354d657461236d6574615361666542617463685472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e54000000000000000060648201526084016103f6565b60606107e060405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b60006108c289857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c60405160200161081e9190612c9d565b604051602081830303815290604052805190602001208c6040516020016108459190612c9d565b604051602081830303815290604052805190602001208c61086757600061086a565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b6040516020818303038152906040526119bb565b90506108d0898989896115d7565b841561091357808060200190518101906108ea9190612dcb565b80945081935050506109048989898986602001518861183c565b61090e8983611c4b565b610921565b610921898989895a8661183c565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff85166109cf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461236d657461536166655472616e7366657246726f6d60448201527f3a20494e56414c49445f524543495049454e540000000000000000000000000060648201526084016103f6565b6060610a1260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610a4a89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c61086757600061086a565b9050610a5889898989611fbe565b8415610a8c5780806020019051810190610a729190612dcb565b8094508193505050610904898989898660200151886120a2565b610921898989895a866120a2565b3373ffffffffffffffffffffffffffffffffffffffff86161480610aee575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610b7a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f520000000000000000000000000000000000000000000060648201526084016103f6565b73ffffffffffffffffffffffffffffffffffffffff8416610c1d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e5400000000000000000000000000000000000000000060648201526084016103f6565b610c2985858585611fbe565b6104bc858585855a866120a2565b6000610cc286837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610c6d576000610c70565b60015b89610c7c576000610c7f565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c0016108ae565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610d8657600081806020019051810190610d789190612e25565b9050610d848782611c4b565b505b505050505050565b600080825111610e46576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4016103f6565b73ffffffffffffffffffffffffffffffffffffffff8516610ee9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e45520000000000000000000000000060648201526084016103f6565b6000610ef483612221565b60f81c905060058110610f89576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b60008160ff166005811115610fa057610fa0612e5a565b9050600080808080856005811115610fba57610fba612e5a565b03611047576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e41545552450000000000000000000060648201526084016103f6565b600185600581111561105b5761105b612e5a565b036111cd5787516061146110f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b6110fc886000612324565b9250611109886020612324565b91508760408151811061111e5761111e612c07565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa15801561117b573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d811691161497506115cf9650505050505050565b60028560058111156111e1576111e1612e5a565b03611347578751606114611277576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f524551554952454400000000000000000060648201526084016103f6565b611282886000612324565b925061128f886020612324565b9150876040815181106112a4576112a4612c07565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001611159565b600385600581111561135b5761135b612e5a565b03611447576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b906113b4908c908c90600401612ed3565b602060405180830381865afa1580156113d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b600485600581111561145b5761145b612e5a565b03611547576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e906114b4908d908c90600401612f1e565b602060405180830381865afa1580156114d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f59190612f01565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e000000000000000000000000000000000000000000000000000000001496506115cf95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e415455524500000000000060648201526084016103f6565b949350505050565b8051825114611668576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e475448000000000000000000000060648201526084016103f6565b815160005b818110156117b65782818151811061168757611687612c07565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106116e1576116e1612c07565b6020026020010151815260200190815260200160002060008282546117069190612f37565b9250508190555082818151811061171f5761171f612c07565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061177957611779612c07565b60200260200101518152602001908152602001600020600082825461179e9190612f4a565b909155508190506117ae81612c65565b91505061166d565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161182d929190612f5d565b60405180910390a45050505050565b61185b8573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b81526004016118a4959493929190612f82565b60206040518083038160008887f11580156118c3573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906118e89190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d4553534147450060648201526084016103f6565b606080838060200190518101906119d29190612fed565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611a0a836041612324565b9050818110801590611a255750611a22826064612f4a565b81105b611ab1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f4e4f4e4345000000000000000000000000000000000060648201526084016103f6565b6000611aed86838780519060200120604051602001611ad293929190613024565b60405160208183030381529060405280519060200120612411565b90506000868387604051602001611b069392919061304b565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611b41836001612f4a565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf59611b96856001612f4a565b60405190815260200160405180910390a2611bb389838388610d8e565b611c3f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135354d657461235f7369676e617475726556616c69646174696f6e60448201527f3a20494e56414c49445f5349474e41545552450000000000000000000000000060648201526084016103f6565b50505050509392505050565b6000611c5a8260600151612221565b60f81c905060028110611cef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f455243313135354d657461235f7472616e736665724761734665653a20554e5360448201527f5550504f525445445f544f4b454e00000000000000000000000000000000000060648201526084016103f6565b60008160ff166002811115611d0657611d06612e5a565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff1615611d3c578660400151611d3e565b335b92506000856002811115611d5457611d54612e5a565b03611e6b578660600151806020019051810190611d719190613082565b90945091503073ffffffffffffffffffffffffffffffffffffffff851603611dc157611d9f88848484611fbe565b611dbc8884845a85604051806020016040528060008152506120a2565b611fb4565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b158015611e4e57600080fd5b505af1158015611e62573d6000803e3d6000fd5b50505050611fb4565b8660600151806020019051810190611e8391906130b0565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015611f04573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2891906130cd565b611fb4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135354d657461235f7472616e736665724761734665653a2045524360448201527f32305f5452414e534645525f4641494c4544000000000000000000000000000060648201526084016103f6565b5050505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290611ffc908490612f37565b909155505073ffffffffffffffffffffffffffffffffffffffff83166000908152602081815260408083208584529091528120805483929061203f908490612f4a565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6120c18573ffffffffffffffffffffffffffffffffffffffff166123d7565b15610d865760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b815260040161210a9594939291906130ea565b60206040518083038160008887f1158015612129573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061214e9190612f01565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610d84576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d45535341474500000000000060648201526084016103f6565b6000808251116122b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f524551554952454400000000000000000060648201526084016103f6565b81600183516122c29190612f37565b815181106122d2576122d2612c07565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b6000612331826020612f4a565b835110156123c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f52455155495245440000000060648201526084016103f6565b6123cc602083612f4a565b929092015192915050565b6000813f801580159061240a57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b3060405160200161249e92919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b60405160208183030381529060405280519060200120836040516020016124c793929190613024565b604051602081830303815290604052805190602001209050919050565b73ffffffffffffffffffffffffffffffffffffffff8116811461250657600080fd5b50565b6000806040838503121561251c57600080fd5b8235612527816124e4565b946020939093013593505050565b7fffffffff000000000000000000000000000000000000000000000000000000008116811461250657600080fd5b60006020828403121561257557600080fd5b813561240a81612535565b60006020828403121561259257600080fd5b813561240a816124e4565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156126135761261361259d565b604052919050565b600067ffffffffffffffff8211156126355761263561259d565b5060051b60200190565b600082601f83011261265057600080fd5b813560206126656126608361261b565b6125cc565b82815260059290921b8401810191818101908684111561268457600080fd5b8286015b8481101561269f5780358352918301918301612688565b509695505050505050565b600067ffffffffffffffff8211156126c4576126c461259d565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f83011261270157600080fd5b813561270f612660826126aa565b81815284602083860101111561272457600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561275957600080fd5b8535612764816124e4565b94506020860135612774816124e4565b9350604086013567ffffffffffffffff8082111561279157600080fd5b61279d89838a0161263f565b945060608801359150808211156127b357600080fd5b6127bf89838a0161263f565b935060808801359150808211156127d557600080fd5b506127e2888289016126f0565b9150509295509295909350565b6000806040838503121561280257600080fd5b823567ffffffffffffffff8082111561281a57600080fd5b818501915085601f83011261282e57600080fd5b8135602061283e6126608361261b565b82815260059290921b8401810191818101908984111561285d57600080fd5b948201945b83861015612884578535612875816124e4565b82529482019490820190612862565b9650508601359250508082111561289a57600080fd5b506128a78582860161263f565b9150509250929050565b600081518084526020808501945080840160005b838110156128e1578151875295820195908201906001016128c5565b509495945050505050565b60208152600061240a60208301846128b1565b801515811461250657600080fd5b6000806040838503121561292057600080fd5b823561292b816124e4565b9150602083013561293b816128ff565b809150509250929050565b60008060008060008060c0878903121561295f57600080fd5b863561296a816124e4565b9550602087013561297a816124e4565b9450604087013567ffffffffffffffff8082111561299757600080fd5b6129a38a838b0161263f565b955060608901359150808211156129b957600080fd5b6129c58a838b0161263f565b9450608089013591506129d7826128ff565b90925060a088013590808211156129ed57600080fd5b506129fa89828a016126f0565b9150509295509295509295565b60008060008060008060c08789031215612a2057600080fd5b8635612a2b816124e4565b95506020870135612a3b816124e4565b945060408701359350606087013592506080870135612a59816128ff565b915060a087013567ffffffffffffffff811115612a7557600080fd5b6129fa89828a016126f0565b60008060408385031215612a9457600080fd5b8235612a9f816124e4565b9150602083013561293b816124e4565b600080600080600060a08688031215612ac757600080fd5b8535612ad2816124e4565b94506020860135612ae2816124e4565b93506040860135925060608601359150608086013567ffffffffffffffff811115612b0c57600080fd5b6127e2888289016126f0565b600080600080600060a08688031215612b3057600080fd5b8535612b3b816124e4565b94506020860135612b4b816124e4565b93506040860135612b5b816128ff565b92506060860135612b6b816128ff565b9150608086013567ffffffffffffffff811115612b0c57600080fd5b60008060008060808587031215612b9d57600080fd5b8435612ba8816124e4565b935060208501359250604085013567ffffffffffffffff80821115612bcc57600080fd5b612bd8888389016126f0565b93506060870135915080821115612bee57600080fd5b50612bfb878288016126f0565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203612c9657612c96612c36565b5060010190565b815160009082906020808601845b83811015612cc757815185529382019390820190600101612cab565b50929695505050505050565b60005b83811015612cee578181015183820152602001612cd6565b50506000910152565b600082601f830112612d0857600080fd5b8151612d16612660826126aa565b818152846020838601011115612d2b57600080fd5b6115cf826020830160208701612cd3565b600060808284031215612d4e57600080fd5b6040516080810167ffffffffffffffff8282108183111715612d7257612d7261259d565b81604052829350845183526020850151602084015260408501519150612d97826124e4565b8160408401526060850151915080821115612db157600080fd5b50612dbe85828601612cf7565b6060830152505092915050565b60008060408385031215612dde57600080fd5b825167ffffffffffffffff80821115612df657600080fd5b612e0286838701612d3c565b93506020850151915080821115612e1857600080fd5b506128a785828601612cf7565b600060208284031215612e3757600080fd5b815167ffffffffffffffff811115612e4e57600080fd5b6115cf84828501612d3c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60008151808452612ea1816020860160208601612cd3565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b604081526000612ee66040830185612e89565b8281036020840152612ef88185612e89565b95945050505050565b600060208284031215612f1357600080fd5b815161240a81612535565b8281526040602082015260006115cf6040830184612e89565b8181038181111561027757610277612c36565b8082018082111561027757610277612c36565b604081526000612f7060408301856128b1565b8281036020840152612ef881856128b1565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152612fbb60a08301866128b1565b8281036060840152612fcd81866128b1565b90508281036080840152612fe18185612e89565b98975050505050505050565b6000806040838503121561300057600080fd5b825167ffffffffffffffff8082111561301857600080fd5b612e0286838701612cf7565b60008451613036818460208901612cd3565b91909101928352506020820152604001919050565b6000845161305d818460208901612cd3565b82018481528351613075816020808501908801612cd3565b0160200195945050505050565b6000806040838503121561309557600080fd5b82516130a0816124e4565b6020939093015192949293505050565b6000602082840312156130c257600080fd5b815161240a816124e4565b6000602082840312156130df57600080fd5b815161240a816128ff565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261312f60a0830184612e89565b97965050505050505056fea26469706673582212203f2d837641f4ab720ec8ebec0164637bd3435cd25c4966fbf64b1a973914da2464736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/tokens/ERC1155/ERC1155Metadata.sol/ERC1155Metadata.json b/src/artifacts/contracts/tokens/ERC1155/ERC1155Metadata.sol/ERC1155Metadata.json index 4cc2311..bbb956a 100644 --- a/src/artifacts/contracts/tokens/ERC1155/ERC1155Metadata.sol/ERC1155Metadata.json +++ b/src/artifacts/contracts/tokens/ERC1155/ERC1155Metadata.sol/ERC1155Metadata.json @@ -103,8 +103,8 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b5060405162000ab238038062000ab283398101604081905262000034916200013e565b600162000042838262000238565b50600062000051828262000238565b5050506200035f565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b815167ffffffffffffffff80821115620000a057620000a06200005a565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000e957620000e96200005a565b816040528381526020925086838588010111156200010657600080fd5b600091505b838210156200012a57858201830151818301840152908201906200010b565b600093810190920192909252949350505050565b600080604083850312156200015257600080fd5b825167ffffffffffffffff808211156200016b57600080fd5b620001798683870162000070565b935060208501519150808211156200019057600080fd5b506200019f8582860162000070565b9150509250929050565b600181811c90821680620001be57607f821691505b602082108103620001df57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023357600081815260208120601f850160051c810160208610156200020e5750805b601f850160051c820191505b818110156200022f578281556001016200021a565b5050505b505050565b815167ffffffffffffffff8111156200025557620002556200005a565b6200026d81620002668454620001a9565b84620001e5565b602080601f831160018114620002c357600084156200028c5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556200022f565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031257888601518255948401946001909101908401620002f1565b50858210156200034f57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b610743806200036f6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806301ffc9a71461005157806306fdde03146100795780630e89341c1461008e5780636c0360eb146100a1575b600080fd5b61006461005f366004610377565b6100a9565b60405190151581526020015b60405180910390f35b610081610148565b60405161007091906103e4565b61008161009c366004610435565b6101d6565b61008161020a565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016100fc57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600180546101559061044e565b80601f01602080910402602001604051908101604052809291908181526020018280546101819061044e565b80156101ce5780601f106101a3576101008083540402835291602001916101ce565b820191906000526020600020905b8154815290600101906020018083116101b157829003601f168201915b505050505081565b606060006101e383610217565b6040516020016101f49291906104bd565b6040516020818303038152906040529050919050565b600080546101559061044e565b60608160000361025a57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610284578061026e816105f9565b915061027d9050600a83610631565b915061025e565b60008167ffffffffffffffff81111561029f5761029f61066c565b6040519080825280601f01601f1916602001820160405280156102c9576020820181803683370190505b509050815b851561036e576102df60018261069b565b905060006102ee600a88610631565b6102f990600a6106ae565b610303908861069b565b61030e9060306106c5565b905060008160f81b90508084848151811061032b5761032b6106de565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610365600a89610631565b975050506102ce565b50949350505050565b60006020828403121561038957600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103b957600080fd5b9392505050565b60005b838110156103db5781810151838201526020016103c3565b50506000910152565b60208152600082518060208401526104038160408501602087016103c0565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60006020828403121561044757600080fd5b5035919050565b600181811c9082168061046257607f821691505b60208210810361049b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516104b38185602086016103c0565b9290920192915050565b600080845481600182811c9150808316806104d957607f831692505b60208084108203610511577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015610525576001811461055857610585565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650610585565b60008b81526020902060005b8681101561057d5781548b820152908501908301610564565b505084890196505b5050505050506105c161059882866104a1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361062a5761062a6105ca565b5060010190565b600082610667577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b81810381811115610142576101426105ca565b8082028115828204841417610142576101426105ca565b60ff8181168382160190811115610142576101426105ca565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea2646970667358221220574976883a38ac05f4726a0e0e1c4402fe6a72c391c7bf7eb37846fc680dad3564736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806301ffc9a71461005157806306fdde03146100795780630e89341c1461008e5780636c0360eb146100a1575b600080fd5b61006461005f366004610377565b6100a9565b60405190151581526020015b60405180910390f35b610081610148565b60405161007091906103e4565b61008161009c366004610435565b6101d6565b61008161020a565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016100fc57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600180546101559061044e565b80601f01602080910402602001604051908101604052809291908181526020018280546101819061044e565b80156101ce5780601f106101a3576101008083540402835291602001916101ce565b820191906000526020600020905b8154815290600101906020018083116101b157829003601f168201915b505050505081565b606060006101e383610217565b6040516020016101f49291906104bd565b6040516020818303038152906040529050919050565b600080546101559061044e565b60608160000361025a57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610284578061026e816105f9565b915061027d9050600a83610631565b915061025e565b60008167ffffffffffffffff81111561029f5761029f61066c565b6040519080825280601f01601f1916602001820160405280156102c9576020820181803683370190505b509050815b851561036e576102df60018261069b565b905060006102ee600a88610631565b6102f990600a6106ae565b610303908861069b565b61030e9060306106c5565b905060008160f81b90508084848151811061032b5761032b6106de565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610365600a89610631565b975050506102ce565b50949350505050565b60006020828403121561038957600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103b957600080fd5b9392505050565b60005b838110156103db5781810151838201526020016103c3565b50506000910152565b60208152600082518060208401526104038160408501602087016103c0565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60006020828403121561044757600080fd5b5035919050565b600181811c9082168061046257607f821691505b60208210810361049b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516104b38185602086016103c0565b9290920192915050565b600080845481600182811c9150808316806104d957607f831692505b60208084108203610511577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015610525576001811461055857610585565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650610585565b60008b81526020902060005b8681101561057d5781548b820152908501908301610564565b505084890196505b5050505050506105c161059882866104a1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361062a5761062a6105ca565b5060010190565b600082610667577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b81810381811115610142576101426105ca565b8082028115828204841417610142576101426105ca565b60ff8181168382160190811115610142576101426105ca565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea2646970667358221220574976883a38ac05f4726a0e0e1c4402fe6a72c391c7bf7eb37846fc680dad3564736f6c63430008120033", + "bytecode": "0x60806040523480156200001157600080fd5b5060405162000ab238038062000ab283398101604081905262000034916200013e565b600162000042838262000238565b50600062000051828262000238565b5050506200035f565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b815167ffffffffffffffff80821115620000a057620000a06200005a565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715620000e957620000e96200005a565b816040528381526020925086838588010111156200010657600080fd5b600091505b838210156200012a57858201830151818301840152908201906200010b565b600093810190920192909252949350505050565b600080604083850312156200015257600080fd5b825167ffffffffffffffff808211156200016b57600080fd5b620001798683870162000070565b935060208501519150808211156200019057600080fd5b506200019f8582860162000070565b9150509250929050565b600181811c90821680620001be57607f821691505b602082108103620001df57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200023357600081815260208120601f850160051c810160208610156200020e5750805b601f850160051c820191505b818110156200022f578281556001016200021a565b5050505b505050565b815167ffffffffffffffff8111156200025557620002556200005a565b6200026d81620002668454620001a9565b84620001e5565b602080601f831160018114620002c357600084156200028c5750858301515b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600386901b1c1916600185901b1785556200022f565b6000858152602081207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08616915b828110156200031257888601518255948401946001909101908401620002f1565b50858210156200034f57878501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600388901b60f8161c191681555b5050505050600190811b01905550565b610743806200036f6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c806301ffc9a71461005157806306fdde03146100795780630e89341c1461008e5780636c0360eb146100a1575b600080fd5b61006461005f366004610377565b6100a9565b60405190151581526020015b60405180910390f35b610081610148565b60405161007091906103e4565b61008161009c366004610435565b6101d6565b61008161020a565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016100fc57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600180546101559061044e565b80601f01602080910402602001604051908101604052809291908181526020018280546101819061044e565b80156101ce5780601f106101a3576101008083540402835291602001916101ce565b820191906000526020600020905b8154815290600101906020018083116101b157829003601f168201915b505050505081565b606060006101e383610217565b6040516020016101f49291906104bd565b6040516020818303038152906040529050919050565b600080546101559061044e565b60608160000361025a57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610284578061026e816105f9565b915061027d9050600a83610631565b915061025e565b60008167ffffffffffffffff81111561029f5761029f61066c565b6040519080825280601f01601f1916602001820160405280156102c9576020820181803683370190505b509050815b851561036e576102df60018261069b565b905060006102ee600a88610631565b6102f990600a6106ae565b610303908861069b565b61030e9060306106c5565b905060008160f81b90508084848151811061032b5761032b6106de565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610365600a89610631565b975050506102ce565b50949350505050565b60006020828403121561038957600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103b957600080fd5b9392505050565b60005b838110156103db5781810151838201526020016103c3565b50506000910152565b60208152600082518060208401526104038160408501602087016103c0565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60006020828403121561044757600080fd5b5035919050565b600181811c9082168061046257607f821691505b60208210810361049b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516104b38185602086016103c0565b9290920192915050565b600080845481600182811c9150808316806104d957607f831692505b60208084108203610511577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015610525576001811461055857610585565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650610585565b60008b81526020902060005b8681101561057d5781548b820152908501908301610564565b505084890196505b5050505050506105c161059882866104a1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361062a5761062a6105ca565b5060010190565b600082610667577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b81810381811115610142576101426105ca565b8082028115828204841417610142576101426105ca565b60ff8181168382160190811115610142576101426105ca565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea26469706673582212203fb18edc2aeddba110cc433451a0c50dc9d6861311263d57ae896162e7336d3364736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c806301ffc9a71461005157806306fdde03146100795780630e89341c1461008e5780636c0360eb146100a1575b600080fd5b61006461005f366004610377565b6100a9565b60405190151581526020015b60405180910390f35b610081610148565b60405161007091906103e4565b61008161009c366004610435565b6101d6565b61008161020a565b60007ff176cbe4000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016100fc57506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b600180546101559061044e565b80601f01602080910402602001604051908101604052809291908181526020018280546101819061044e565b80156101ce5780601f106101a3576101008083540402835291602001916101ce565b820191906000526020600020905b8154815290600101906020018083116101b157829003601f168201915b505050505081565b606060006101e383610217565b6040516020016101f49291906104bd565b6040516020818303038152906040529050919050565b600080546101559061044e565b60608160000361025a57505060408051808201909152600181527f3000000000000000000000000000000000000000000000000000000000000000602082015290565b8160005b8115610284578061026e816105f9565b915061027d9050600a83610631565b915061025e565b60008167ffffffffffffffff81111561029f5761029f61066c565b6040519080825280601f01601f1916602001820160405280156102c9576020820181803683370190505b509050815b851561036e576102df60018261069b565b905060006102ee600a88610631565b6102f990600a6106ae565b610303908861069b565b61030e9060306106c5565b905060008160f81b90508084848151811061032b5761032b6106de565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350610365600a89610631565b975050506102ce565b50949350505050565b60006020828403121561038957600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103b957600080fd5b9392505050565b60005b838110156103db5781810151838201526020016103c3565b50506000910152565b60208152600082518060208401526104038160408501602087016103c0565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b60006020828403121561044757600080fd5b5035919050565b600181811c9082168061046257607f821691505b60208210810361049b577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b600081516104b38185602086016103c0565b9290920192915050565b600080845481600182811c9150808316806104d957607f831692505b60208084108203610511577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015610525576001811461055857610585565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0086168952841515850289019650610585565b60008b81526020902060005b8681101561057d5781548b820152908501908301610564565b505084890196505b5050505050506105c161059882866104a1565b7f2e6a736f6e000000000000000000000000000000000000000000000000000000815260050190565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361062a5761062a6105ca565b5060010190565b600082610667577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b81810381811115610142576101426105ca565b8082028115828204841417610142576101426105ca565b60ff8181168382160190811115610142576101426105ca565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fdfea26469706673582212203fb18edc2aeddba110cc433451a0c50dc9d6861311263d57ae896162e7336d3364736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/tokens/ERC1155/ERC1155MintBurn.sol/ERC1155MintBurn.json b/src/artifacts/contracts/tokens/ERC1155/ERC1155MintBurn.sol/ERC1155MintBurn.json index 78aedbe..223b743 100644 --- a/src/artifacts/contracts/tokens/ERC1155/ERC1155MintBurn.sol/ERC1155MintBurn.json +++ b/src/artifacts/contracts/tokens/ERC1155/ERC1155MintBurn.sol/ERC1155MintBurn.json @@ -278,8 +278,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122050c1c6eecd80705a863476fb3bb2035b133c08e8edd998f840e9204441a8752564736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122050c1c6eecd80705a863476fb3bb2035b133c08e8edd998f840e9204441a8752564736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b5061156d806100206000396000f3fe608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122060f17d51b05466f91440e7af9c11fed2abdf67c881d6d642b6a10f5d3f6db1b764736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007c5760003560e01c80634e1273f41161005b5780634e1273f4146100df578063a22cb465146100ff578063e985e9c514610112578063f242432a1461015b57600080fd5b8062fdd58e1461008157806301ffc9a7146100a75780632eb2c2d6146100ca575b600080fd5b61009461008f366004610e72565b61016e565b6040519081526020015b60405180910390f35b6100ba6100b5366004610ecd565b6101a4565b604051901515815260200161009e565b6100dd6100d8366004611085565b610241565b005b6100f26100ed36600461112f565b6103ea565b60405161009e919061122a565b6100dd61010d36600461123d565b61058a565b6100ba610120366004611279565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100dd6101693660046112ac565b610621565b73ffffffffffffffffffffffffffffffffffffffff82166000908152602081815260408083208484529091529020545b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316016101f757506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083161461019e565b3373ffffffffffffffffffffffffffffffffffffffff86161480610295575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610326576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602f60248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f4f50455241544f52000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff84166103c9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603060248201527f45524331313535237361666542617463685472616e7366657246726f6d3a204960448201527f4e56414c49445f524543495049454e5400000000000000000000000000000000606482015260840161031d565b6103d5858585856107be565b6103e3858585855a86610a23565b5050505050565b6060815183511461047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602c60248201527f455243313135352362616c616e63654f6642617463683a20494e56414c49445f60448201527f41525241595f4c454e4754480000000000000000000000000000000000000000606482015260840161031d565b6000835167ffffffffffffffff81111561049957610499610eea565b6040519080825280602002602001820160405280156104c2578160200160208202803683370190505b50905060005b8451811015610582576000808683815181106104e6576104e6611311565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085838151811061053c5761053c611311565b602002602001015181526020019081526020016000205482828151811061056557610565611311565b60209081029190910101528061057a8161136f565b9150506104c8565b509392505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610675575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610701576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f4f50455241544f5200000000000000000000000000000000000000000000606482015260840161031d565b73ffffffffffffffffffffffffffffffffffffffff84166107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4552433131353523736166655472616e7366657246726f6d3a20494e56414c4960448201527f445f524543495049454e54000000000000000000000000000000000000000000606482015260840161031d565b6107b085858585610bac565b6103e3858585855a86610c90565b805182511461084f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603560248201527f45524331313535235f7361666542617463685472616e7366657246726f6d3a2060448201527f494e56414c49445f4152524159535f4c454e4754480000000000000000000000606482015260840161031d565b815160005b8181101561099d5782818151811061086e5761086e611311565b60200260200101516000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008684815181106108c8576108c8611311565b6020026020010151815260200190815260200160002060008282546108ed91906113a7565b9250508190555082818151811061090657610906611311565b60200260200101516000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600086848151811061096057610960611311565b60200260200101518152602001908152602001600020600082825461098591906113ba565b909155508190506109958161136f565b915050610854565b508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610a149291906113cd565b60405180910390a45050505050565b610a428573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610a8b95949392919061145f565b60206040518083038160008887f1158015610aaa573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610acf91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f45524331313535235f63616c6c6f6e455243313135354261746368526563656960448201527f7665643a20494e56414c49445f4f4e5f524543454956455f4d45535341474500606482015260840161031d565b505b505050505050565b73ffffffffffffffffffffffffffffffffffffffff841660009081526020818152604080832085845290915281208054839290610bea9084906113a7565b909155505073ffffffffffffffffffffffffffffffffffffffff831660009081526020818152604080832085845290915281208054839290610c2d9084906113ba565b9091555050604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b610caf8573ffffffffffffffffffffffffffffffffffffffff16610e0f565b15610ba45760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b8152600401610cf89594939291906114e7565b60206040518083038160008887f1158015610d17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610d3c91906114ca565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610ba2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f45524331313535235f63616c6c6f6e4552433131353552656365697665643a2060448201527f494e56414c49445f4f4e5f524543454956455f4d455353414745000000000000606482015260840161031d565b6000813f8015801590610e4257507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b803573ffffffffffffffffffffffffffffffffffffffff81168114610e6d57600080fd5b919050565b60008060408385031215610e8557600080fd5b610e8e83610e49565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114610eca57600080fd5b50565b600060208284031215610edf57600080fd5b8135610e4281610e9c565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715610f6057610f60610eea565b604052919050565b600067ffffffffffffffff821115610f8257610f82610eea565b5060051b60200190565b600082601f830112610f9d57600080fd5b81356020610fb2610fad83610f68565b610f19565b82815260059290921b84018101918181019086841115610fd157600080fd5b8286015b84811015610fec5780358352918301918301610fd5565b509695505050505050565b600082601f83011261100857600080fd5b813567ffffffffffffffff81111561102257611022610eea565b61105360207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601610f19565b81815284602083860101111561106857600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561109d57600080fd5b6110a686610e49565b94506110b460208701610e49565b9350604086013567ffffffffffffffff808211156110d157600080fd5b6110dd89838a01610f8c565b945060608801359150808211156110f357600080fd5b6110ff89838a01610f8c565b9350608088013591508082111561111557600080fd5b5061112288828901610ff7565b9150509295509295909350565b6000806040838503121561114257600080fd5b823567ffffffffffffffff8082111561115a57600080fd5b818501915085601f83011261116e57600080fd5b8135602061117e610fad83610f68565b82815260059290921b8401810191818101908984111561119d57600080fd5b948201945b838610156111c2576111b386610e49565b825294820194908201906111a2565b965050860135925050808211156111d857600080fd5b506111e585828601610f8c565b9150509250929050565b600081518084526020808501945080840160005b8381101561121f57815187529582019590820190600101611203565b509495945050505050565b602081526000610e4260208301846111ef565b6000806040838503121561125057600080fd5b61125983610e49565b91506020830135801515811461126e57600080fd5b809150509250929050565b6000806040838503121561128c57600080fd5b61129583610e49565b91506112a360208401610e49565b90509250929050565b600080600080600060a086880312156112c457600080fd5b6112cd86610e49565b94506112db60208701610e49565b93506040860135925060608601359150608086013567ffffffffffffffff81111561130557600080fd5b61112288828901610ff7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036113a0576113a0611340565b5060010190565b8181038181111561019e5761019e611340565b8082018082111561019e5761019e611340565b6040815260006113e060408301856111ef565b82810360208401526113f281856111ef565b95945050505050565b6000815180845260005b8181101561142157602081850181015186830182015201611405565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261149860a08301866111ef565b82810360608401526114aa81866111ef565b905082810360808401526114be81856113fb565b98975050505050505050565b6000602082840312156114dc57600080fd5b8151610e4281610e9c565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261152c60a08301846113fb565b97965050505050505056fea264697066735822122060f17d51b05466f91440e7af9c11fed2abdf67c881d6d642b6a10f5d3f6db1b764736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance.sol/ERC1155MetaPackedBalance.json b/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance.sol/ERC1155MetaPackedBalance.json index ffaa789..dc8c852 100644 --- a/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance.sol/ERC1155MetaPackedBalance.json +++ b/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155MetaPackedBalance.sol/ERC1155MetaPackedBalance.json @@ -507,8 +507,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50613a73806100206000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c8063ce0b514b1161008c578063eaec5f8111610066578063eaec5f811461024c578063f242432a1461025f578063f5d4c82014610272578063fa4e12d71461028557600080fd5b8063ce0b514b146101c8578063db90e83c146101db578063e985e9c51461020357600080fd5b80632eb2c2d6116100c85780632eb2c2d61461016d5780634e1273f414610182578063a22cb465146101a2578063a3d4926e146101b557600080fd5b8062fdd58e146100ee57806301ffc9a7146101145780632d0335ab14610137575b600080fd5b6101016100fc366004612c37565b610298565b6040519081526020015b60405180910390f35b610127610122366004612c91565b6102ef565b604051901515815260200161010b565b610101610145366004612cae565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61018061017b366004612e6f565b61038c565b005b610195610190366004612f1d565b610535565b60405161010b919061301a565b6101806101b036600461303b565b61082f565b6101806101c3366004613074565b6108c6565b6101806101d6366004613135565b610b1e565b6101ee6101e93660046131af565b610c8e565b6040805192835260208301919091520161010b565b6101276102113660046131c8565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61010161025a3660046131f6565b610cc8565b61018061026d366004613218565b610cf6565b610180610280366004613281565b610e93565b6101276102933660046132f0565b610fea565b60008060006102a684610c8e565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506102e49082610cc8565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161034257506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102e9565b3373ffffffffffffffffffffffffffffffffffffffff861614806103e0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610471576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8416610514576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610468565b61052085858585611833565b61052e858585855a86611c96565b5050505050565b815181516060919081146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610468565b6000806105f1856000815181106105e4576105e4613370565b6020026020010151610c8e565b9150915060008060008860008151811061060d5761060d613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561068357610683612ccb565b6040519080825280602002602001820160405280156106ac578160200160208202803683370190505b5090506106b98385610cc8565b816000815181106106cc576106cc613370565b602090810291909101015260015b86811015610822576106f78982815181106105e4576105e4613370565b90965094508286141580610775575089818151811061071857610718613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361074491906133ce565b8151811061075457610754613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156107e9576000808b838151811061078f5761078f613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6107f38486610cc8565b82828151811061080557610805613370565b60209081029190910101528061081a816133e1565b9150506106da565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661098f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a401610468565b60606109d260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610ab489857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610a109190613419565b604051602081830303815290604052805190602001208c604051602001610a379190613419565b604051602081830303815290604052805190602001208c610a59576000610a5c565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e3b565b9050610ac289898989611833565b8415610b055780806020019051810190610adc9190613547565b8094508193505050610af689898989866020015188611c96565b610b0089836120cd565b610b13565b610b13898989895a86611c96565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8516610bc357604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e546064820152608401610468565b6060610c0660405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3e89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a59576000610a5c565b9050610c4c89898989612440565b8415610c805780806020019051810190610c669190613547565b8094508193505050610af6898989898660200151886124b8565b610b13898989895a866124b8565b600080610c9e60206101006135d0565b610ca890846135d0565b9150610cb760206101006135d0565b610cc190846135e4565b9050915091565b600080610cdb60016401000000006133ce565b90506000610cea8460206135f8565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610d4a575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610dd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610468565b73ffffffffffffffffffffffffffffffffffffffff8416610e79576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610468565b610e8585858585612440565b61052e858585855a866124b8565b6000610f1e86837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610ec9576000610ecc565b60015b89610ed8576000610edb565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610aa0565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610fe257600081806020019051810190610fd4919061360f565b9050610fe087826120cd565b505b505050505050565b6000808251116110a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a401610468565b73ffffffffffffffffffffffffffffffffffffffff8516611145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e4552000000000000000000000000006064820152608401610468565b60006111508361265d565b60f81c9050600581106111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b60008160ff1660058111156111fc576111fc613644565b905060008080808085600581111561121657611216613644565b036112a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e4154555245000000000000000000006064820152608401610468565b60018560058111156112b7576112b7613644565b0361142957875160611461134d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b611358886000612760565b9250611365886020612760565b91508760408151811061137a5761137a613370565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156113d7573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061182b9650505050505050565b600285600581111561143d5761143d613644565b036115a35787516061146114d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b6114de886000612760565b92506114eb886020612760565b91508760408151811061150057611500613370565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016113b5565b60038560058111156115b7576115b7613644565b036116a3576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611610908c908c906004016136bd565b602060405180830381865afa15801561162d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b60048560058111156116b7576116b7613644565b036117a3576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611710908d908c90600401613708565b602060405180830381865afa15801561172d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b949350505050565b8151815181146118eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610468565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156119275750600081115b15611b2757600080611945856000815181106105e4576105e4613370565b73ffffffffffffffffffffffffffffffffffffffff89166000908152602081815260408083208584529091528120548751939550919350916119a3919084908890859061199457611994613370565b60200260200101516001612813565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320878452909152812054875192935090916119ff91908590899085906119f0576119f0613370565b60200260200101516000612813565b90508360015b86811015611ad557611a228982815181106105e4576105e4613370565b9096509450818614611a915773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611aa884868a848151811061199457611994613370565b9350611ac183868a84815181106119f0576119f0613370565b925080611acd816133e1565b915050611a05565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611c11565b60005b81811015611c0f57828181518110611b4457611b44613370565b6020026020010151611b6f87868481518110611b6257611b62613370565b6020026020010151610298565b1015611bfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610468565b80611c07816133e1565b915050611b2a565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611c87929190613721565b60405180910390a45050505050565b611cb58573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611cfe959493929190613746565b60206040518083038160008887f1158015611d1d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d4291906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610468565b60608083806020019051810190611e5291906137b1565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e8a836041612760565b9050818110801590611ea55750611ea28260646137e8565b81105b611f31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e4345000000006064820152608401610468565b6000611f6d86838780519060200120604051602001611f52939291906137fb565b60405160208183030381529060405280519060200120612ab8565b90506000868387604051602001611f8693929190613822565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611fc18360016137e8565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf596120168560016137e8565b60405190815260200160405180910390a261203389838388610fea565b6120c157604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e41545552456064820152608401610468565b50505050509392505050565b60006120dc826060015161265d565b60f81c905060028110612171576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e00000000006064820152608401610468565b60008160ff16600281111561218857612188613644565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156121be5786604001516121c0565b335b925060008560028111156121d6576121d6613644565b036122ed5786606001518060200190518101906121f39190613859565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036122435761222188848484612440565b61223e8884845a85604051806020016040528060008152506124b8565b612436565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156122d057600080fd5b505af11580156122e4573d6000803e3d6000fd5b50505050612436565b86606001518060200190518101906123059190613887565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612386573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123aa91906138a4565b612436576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c4544006064820152608401610468565b5050505050505050565b61244d8483836001612b8b565b61245a8383836000612b8b565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6124d78573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016125209594939291906138c1565b60206040518083038160008887f115801561253f573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061256491906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610468565b6000808251116126ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f52455155495245440000000000000000006064820152608401610468565b81600183516126fe91906133ce565b8151811061270e5761270e613370565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b600061276d8260206137e8565b835110156127fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f5245515549524544000000006064820152608401610468565b6128086020836137e8565b929092015192915050565b6000806128218560206135f8565b9050600061283560016401000000006133ce565b9050600084600181111561284b5761284b613644565b0361290a5761285c85831b886137e8565b925061286a60206002613a31565b6128788689851c84166137e8565b10612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610468565b612a74565b600184600181111561291e5761291e613644565b036129c65761292f85831b886133ce565b925084818389901c161015612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610468565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610468565b5050949350505050565b6000813f8015801590612ab157507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612b4592919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612b6e939291906137fb565b604051602081830303815290604052805190602001209050919050565b600080612b9785610c8e565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150612bd790828686612813565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b73ffffffffffffffffffffffffffffffffffffffff81168114612c3457600080fd5b50565b60008060408385031215612c4a57600080fd5b8235612c5581612c12565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612c3457600080fd5b600060208284031215612ca357600080fd5b8135612ab181612c63565b600060208284031215612cc057600080fd5b8135612ab181612c12565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612d4157612d41612ccb565b604052919050565b600067ffffffffffffffff821115612d6357612d63612ccb565b5060051b60200190565b600082601f830112612d7e57600080fd5b81356020612d93612d8e83612d49565b612cfa565b82815260059290921b84018101918181019086841115612db257600080fd5b8286015b84811015612dcd5780358352918301918301612db6565b509695505050505050565b600067ffffffffffffffff821115612df257612df2612ccb565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f830112612e2f57600080fd5b8135612e3d612d8e82612dd8565b818152846020838601011115612e5257600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215612e8757600080fd5b8535612e9281612c12565b94506020860135612ea281612c12565b9350604086013567ffffffffffffffff80821115612ebf57600080fd5b612ecb89838a01612d6d565b94506060880135915080821115612ee157600080fd5b612eed89838a01612d6d565b93506080880135915080821115612f0357600080fd5b50612f1088828901612e1e565b9150509295509295909350565b60008060408385031215612f3057600080fd5b823567ffffffffffffffff80821115612f4857600080fd5b818501915085601f830112612f5c57600080fd5b81356020612f6c612d8e83612d49565b82815260059290921b84018101918181019089841115612f8b57600080fd5b948201945b83861015612fb2578535612fa381612c12565b82529482019490820190612f90565b96505086013592505080821115612fc857600080fd5b50612fd585828601612d6d565b9150509250929050565b600081518084526020808501945080840160005b8381101561300f57815187529582019590820190600101612ff3565b509495945050505050565b602081526000612ab16020830184612fdf565b8015158114612c3457600080fd5b6000806040838503121561304e57600080fd5b823561305981612c12565b915060208301356130698161302d565b809150509250929050565b60008060008060008060c0878903121561308d57600080fd5b863561309881612c12565b955060208701356130a881612c12565b9450604087013567ffffffffffffffff808211156130c557600080fd5b6130d18a838b01612d6d565b955060608901359150808211156130e757600080fd5b6130f38a838b01612d6d565b9450608089013591506131058261302d565b90925060a0880135908082111561311b57600080fd5b5061312889828a01612e1e565b9150509295509295509295565b60008060008060008060c0878903121561314e57600080fd5b863561315981612c12565b9550602087013561316981612c12565b9450604087013593506060870135925060808701356131878161302d565b915060a087013567ffffffffffffffff8111156131a357600080fd5b61312889828a01612e1e565b6000602082840312156131c157600080fd5b5035919050565b600080604083850312156131db57600080fd5b82356131e681612c12565b9150602083013561306981612c12565b6000806040838503121561320957600080fd5b50508035926020909101359150565b600080600080600060a0868803121561323057600080fd5b853561323b81612c12565b9450602086013561324b81612c12565b93506040860135925060608601359150608086013567ffffffffffffffff81111561327557600080fd5b612f1088828901612e1e565b600080600080600060a0868803121561329957600080fd5b85356132a481612c12565b945060208601356132b481612c12565b935060408601356132c48161302d565b925060608601356132d48161302d565b9150608086013567ffffffffffffffff81111561327557600080fd5b6000806000806080858703121561330657600080fd5b843561331181612c12565b935060208501359250604085013567ffffffffffffffff8082111561333557600080fd5b61334188838901612e1e565b9350606087013591508082111561335757600080fd5b5061336487828801612e1e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156102e9576102e961339f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036134125761341261339f565b5060010190565b815160009082906020808601845b8381101561344357815185529382019390820190600101613427565b50929695505050505050565b60005b8381101561346a578181015183820152602001613452565b50506000910152565b600082601f83011261348457600080fd5b8151613492612d8e82612dd8565b8181528460208386010111156134a757600080fd5b61182b82602083016020870161344f565b6000608082840312156134ca57600080fd5b6040516080810167ffffffffffffffff82821081831117156134ee576134ee612ccb565b8160405282935084518352602085015160208401526040850151915061351382612c12565b816040840152606085015191508082111561352d57600080fd5b5061353a85828601613473565b6060830152505092915050565b6000806040838503121561355a57600080fd5b825167ffffffffffffffff8082111561357257600080fd5b61357e868387016134b8565b9350602085015191508082111561359457600080fd5b50612fd585828601613473565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826135df576135df6135a1565b500490565b6000826135f3576135f36135a1565b500690565b80820281158282048414176102e9576102e961339f565b60006020828403121561362157600080fd5b815167ffffffffffffffff81111561363857600080fd5b61182b848285016134b8565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000815180845261368b81602086016020860161344f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6040815260006136d06040830185613673565b82810360208401526136e28185613673565b95945050505050565b6000602082840312156136fd57600080fd5b8151612ab181612c63565b82815260406020820152600061182b6040830184613673565b6040815260006137346040830185612fdf565b82810360208401526136e28185612fdf565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261377f60a0830186612fdf565b82810360608401526137918186612fdf565b905082810360808401526137a58185613673565b98975050505050505050565b600080604083850312156137c457600080fd5b825167ffffffffffffffff808211156137dc57600080fd5b61357e86838701613473565b808201808211156102e9576102e961339f565b6000845161380d81846020890161344f565b91909101928352506020820152604001919050565b6000845161383481846020890161344f565b8201848152835161384c81602080850190880161344f565b0160200195945050505050565b6000806040838503121561386c57600080fd5b825161387781612c12565b6020939093015192949293505050565b60006020828403121561389957600080fd5b8151612ab181612c12565b6000602082840312156138b657600080fd5b8151612ab18161302d565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261390660a0830184613673565b979650505050505050565b600181815b8085111561396a57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156139505761395061339f565b8085161561395d57918102915b93841c9390800290613916565b509250929050565b600082613981575060016102e9565b8161398e575060006102e9565b81600181146139a457600281146139ae576139ca565b60019150506102e9565b60ff8411156139bf576139bf61339f565b50506001821b6102e9565b5060208310610133831016604e8410600b84101617156139ed575081810a6102e9565b6139f78383613911565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115613a2957613a2961339f565b029392505050565b6000612ab1838361397256fea264697066735822122098715153ff3f6e26d21adb8d6266df69c9a6c72e3392cd72e1a68e86932d315b64736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100e95760003560e01c8063ce0b514b1161008c578063eaec5f8111610066578063eaec5f811461024c578063f242432a1461025f578063f5d4c82014610272578063fa4e12d71461028557600080fd5b8063ce0b514b146101c8578063db90e83c146101db578063e985e9c51461020357600080fd5b80632eb2c2d6116100c85780632eb2c2d61461016d5780634e1273f414610182578063a22cb465146101a2578063a3d4926e146101b557600080fd5b8062fdd58e146100ee57806301ffc9a7146101145780632d0335ab14610137575b600080fd5b6101016100fc366004612c37565b610298565b6040519081526020015b60405180910390f35b610127610122366004612c91565b6102ef565b604051901515815260200161010b565b610101610145366004612cae565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61018061017b366004612e6f565b61038c565b005b610195610190366004612f1d565b610535565b60405161010b919061301a565b6101806101b036600461303b565b61082f565b6101806101c3366004613074565b6108c6565b6101806101d6366004613135565b610b1e565b6101ee6101e93660046131af565b610c8e565b6040805192835260208301919091520161010b565b6101276102113660046131c8565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61010161025a3660046131f6565b610cc8565b61018061026d366004613218565b610cf6565b610180610280366004613281565b610e93565b6101276102933660046132f0565b610fea565b60008060006102a684610c8e565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506102e49082610cc8565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161034257506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102e9565b3373ffffffffffffffffffffffffffffffffffffffff861614806103e0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610471576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8416610514576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610468565b61052085858585611833565b61052e858585855a86611c96565b5050505050565b815181516060919081146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610468565b6000806105f1856000815181106105e4576105e4613370565b6020026020010151610c8e565b9150915060008060008860008151811061060d5761060d613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561068357610683612ccb565b6040519080825280602002602001820160405280156106ac578160200160208202803683370190505b5090506106b98385610cc8565b816000815181106106cc576106cc613370565b602090810291909101015260015b86811015610822576106f78982815181106105e4576105e4613370565b90965094508286141580610775575089818151811061071857610718613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361074491906133ce565b8151811061075457610754613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156107e9576000808b838151811061078f5761078f613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6107f38486610cc8565b82828151811061080557610805613370565b60209081029190910101528061081a816133e1565b9150506106da565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661098f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a401610468565b60606109d260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610ab489857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610a109190613419565b604051602081830303815290604052805190602001208c604051602001610a379190613419565b604051602081830303815290604052805190602001208c610a59576000610a5c565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e3b565b9050610ac289898989611833565b8415610b055780806020019051810190610adc9190613547565b8094508193505050610af689898989866020015188611c96565b610b0089836120cd565b610b13565b610b13898989895a86611c96565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8516610bc357604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e546064820152608401610468565b6060610c0660405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3e89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a59576000610a5c565b9050610c4c89898989612440565b8415610c805780806020019051810190610c669190613547565b8094508193505050610af6898989898660200151886124b8565b610b13898989895a866124b8565b600080610c9e60206101006135d0565b610ca890846135d0565b9150610cb760206101006135d0565b610cc190846135e4565b9050915091565b600080610cdb60016401000000006133ce565b90506000610cea8460206135f8565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610d4a575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610dd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610468565b73ffffffffffffffffffffffffffffffffffffffff8416610e79576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610468565b610e8585858585612440565b61052e858585855a866124b8565b6000610f1e86837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610ec9576000610ecc565b60015b89610ed8576000610edb565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610aa0565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610fe257600081806020019051810190610fd4919061360f565b9050610fe087826120cd565b505b505050505050565b6000808251116110a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a401610468565b73ffffffffffffffffffffffffffffffffffffffff8516611145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e4552000000000000000000000000006064820152608401610468565b60006111508361265d565b60f81c9050600581106111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b60008160ff1660058111156111fc576111fc613644565b905060008080808085600581111561121657611216613644565b036112a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e4154555245000000000000000000006064820152608401610468565b60018560058111156112b7576112b7613644565b0361142957875160611461134d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b611358886000612760565b9250611365886020612760565b91508760408151811061137a5761137a613370565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156113d7573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061182b9650505050505050565b600285600581111561143d5761143d613644565b036115a35787516061146114d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b6114de886000612760565b92506114eb886020612760565b91508760408151811061150057611500613370565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016113b5565b60038560058111156115b7576115b7613644565b036116a3576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611610908c908c906004016136bd565b602060405180830381865afa15801561162d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b60048560058111156116b7576116b7613644565b036117a3576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611710908d908c90600401613708565b602060405180830381865afa15801561172d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b949350505050565b8151815181146118eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610468565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156119275750600081115b15611b2757600080611945856000815181106105e4576105e4613370565b73ffffffffffffffffffffffffffffffffffffffff89166000908152602081815260408083208584529091528120548751939550919350916119a3919084908890859061199457611994613370565b60200260200101516001612813565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320878452909152812054875192935090916119ff91908590899085906119f0576119f0613370565b60200260200101516000612813565b90508360015b86811015611ad557611a228982815181106105e4576105e4613370565b9096509450818614611a915773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611aa884868a848151811061199457611994613370565b9350611ac183868a84815181106119f0576119f0613370565b925080611acd816133e1565b915050611a05565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611c11565b60005b81811015611c0f57828181518110611b4457611b44613370565b6020026020010151611b6f87868481518110611b6257611b62613370565b6020026020010151610298565b1015611bfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610468565b80611c07816133e1565b915050611b2a565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611c87929190613721565b60405180910390a45050505050565b611cb58573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611cfe959493929190613746565b60206040518083038160008887f1158015611d1d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d4291906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610468565b60608083806020019051810190611e5291906137b1565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e8a836041612760565b9050818110801590611ea55750611ea28260646137e8565b81105b611f31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e4345000000006064820152608401610468565b6000611f6d86838780519060200120604051602001611f52939291906137fb565b60405160208183030381529060405280519060200120612ab8565b90506000868387604051602001611f8693929190613822565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611fc18360016137e8565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf596120168560016137e8565b60405190815260200160405180910390a261203389838388610fea565b6120c157604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e41545552456064820152608401610468565b50505050509392505050565b60006120dc826060015161265d565b60f81c905060028110612171576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e00000000006064820152608401610468565b60008160ff16600281111561218857612188613644565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156121be5786604001516121c0565b335b925060008560028111156121d6576121d6613644565b036122ed5786606001518060200190518101906121f39190613859565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036122435761222188848484612440565b61223e8884845a85604051806020016040528060008152506124b8565b612436565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156122d057600080fd5b505af11580156122e4573d6000803e3d6000fd5b50505050612436565b86606001518060200190518101906123059190613887565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612386573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123aa91906138a4565b612436576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c4544006064820152608401610468565b5050505050505050565b61244d8483836001612b8b565b61245a8383836000612b8b565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6124d78573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016125209594939291906138c1565b60206040518083038160008887f115801561253f573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061256491906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610468565b6000808251116126ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f52455155495245440000000000000000006064820152608401610468565b81600183516126fe91906133ce565b8151811061270e5761270e613370565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b600061276d8260206137e8565b835110156127fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f5245515549524544000000006064820152608401610468565b6128086020836137e8565b929092015192915050565b6000806128218560206135f8565b9050600061283560016401000000006133ce565b9050600084600181111561284b5761284b613644565b0361290a5761285c85831b886137e8565b925061286a60206002613a31565b6128788689851c84166137e8565b10612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610468565b612a74565b600184600181111561291e5761291e613644565b036129c65761292f85831b886133ce565b925084818389901c161015612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610468565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610468565b5050949350505050565b6000813f8015801590612ab157507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612b4592919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612b6e939291906137fb565b604051602081830303815290604052805190602001209050919050565b600080612b9785610c8e565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150612bd790828686612813565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b73ffffffffffffffffffffffffffffffffffffffff81168114612c3457600080fd5b50565b60008060408385031215612c4a57600080fd5b8235612c5581612c12565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612c3457600080fd5b600060208284031215612ca357600080fd5b8135612ab181612c63565b600060208284031215612cc057600080fd5b8135612ab181612c12565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612d4157612d41612ccb565b604052919050565b600067ffffffffffffffff821115612d6357612d63612ccb565b5060051b60200190565b600082601f830112612d7e57600080fd5b81356020612d93612d8e83612d49565b612cfa565b82815260059290921b84018101918181019086841115612db257600080fd5b8286015b84811015612dcd5780358352918301918301612db6565b509695505050505050565b600067ffffffffffffffff821115612df257612df2612ccb565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f830112612e2f57600080fd5b8135612e3d612d8e82612dd8565b818152846020838601011115612e5257600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215612e8757600080fd5b8535612e9281612c12565b94506020860135612ea281612c12565b9350604086013567ffffffffffffffff80821115612ebf57600080fd5b612ecb89838a01612d6d565b94506060880135915080821115612ee157600080fd5b612eed89838a01612d6d565b93506080880135915080821115612f0357600080fd5b50612f1088828901612e1e565b9150509295509295909350565b60008060408385031215612f3057600080fd5b823567ffffffffffffffff80821115612f4857600080fd5b818501915085601f830112612f5c57600080fd5b81356020612f6c612d8e83612d49565b82815260059290921b84018101918181019089841115612f8b57600080fd5b948201945b83861015612fb2578535612fa381612c12565b82529482019490820190612f90565b96505086013592505080821115612fc857600080fd5b50612fd585828601612d6d565b9150509250929050565b600081518084526020808501945080840160005b8381101561300f57815187529582019590820190600101612ff3565b509495945050505050565b602081526000612ab16020830184612fdf565b8015158114612c3457600080fd5b6000806040838503121561304e57600080fd5b823561305981612c12565b915060208301356130698161302d565b809150509250929050565b60008060008060008060c0878903121561308d57600080fd5b863561309881612c12565b955060208701356130a881612c12565b9450604087013567ffffffffffffffff808211156130c557600080fd5b6130d18a838b01612d6d565b955060608901359150808211156130e757600080fd5b6130f38a838b01612d6d565b9450608089013591506131058261302d565b90925060a0880135908082111561311b57600080fd5b5061312889828a01612e1e565b9150509295509295509295565b60008060008060008060c0878903121561314e57600080fd5b863561315981612c12565b9550602087013561316981612c12565b9450604087013593506060870135925060808701356131878161302d565b915060a087013567ffffffffffffffff8111156131a357600080fd5b61312889828a01612e1e565b6000602082840312156131c157600080fd5b5035919050565b600080604083850312156131db57600080fd5b82356131e681612c12565b9150602083013561306981612c12565b6000806040838503121561320957600080fd5b50508035926020909101359150565b600080600080600060a0868803121561323057600080fd5b853561323b81612c12565b9450602086013561324b81612c12565b93506040860135925060608601359150608086013567ffffffffffffffff81111561327557600080fd5b612f1088828901612e1e565b600080600080600060a0868803121561329957600080fd5b85356132a481612c12565b945060208601356132b481612c12565b935060408601356132c48161302d565b925060608601356132d48161302d565b9150608086013567ffffffffffffffff81111561327557600080fd5b6000806000806080858703121561330657600080fd5b843561331181612c12565b935060208501359250604085013567ffffffffffffffff8082111561333557600080fd5b61334188838901612e1e565b9350606087013591508082111561335757600080fd5b5061336487828801612e1e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156102e9576102e961339f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036134125761341261339f565b5060010190565b815160009082906020808601845b8381101561344357815185529382019390820190600101613427565b50929695505050505050565b60005b8381101561346a578181015183820152602001613452565b50506000910152565b600082601f83011261348457600080fd5b8151613492612d8e82612dd8565b8181528460208386010111156134a757600080fd5b61182b82602083016020870161344f565b6000608082840312156134ca57600080fd5b6040516080810167ffffffffffffffff82821081831117156134ee576134ee612ccb565b8160405282935084518352602085015160208401526040850151915061351382612c12565b816040840152606085015191508082111561352d57600080fd5b5061353a85828601613473565b6060830152505092915050565b6000806040838503121561355a57600080fd5b825167ffffffffffffffff8082111561357257600080fd5b61357e868387016134b8565b9350602085015191508082111561359457600080fd5b50612fd585828601613473565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826135df576135df6135a1565b500490565b6000826135f3576135f36135a1565b500690565b80820281158282048414176102e9576102e961339f565b60006020828403121561362157600080fd5b815167ffffffffffffffff81111561363857600080fd5b61182b848285016134b8565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000815180845261368b81602086016020860161344f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6040815260006136d06040830185613673565b82810360208401526136e28185613673565b95945050505050565b6000602082840312156136fd57600080fd5b8151612ab181612c63565b82815260406020820152600061182b6040830184613673565b6040815260006137346040830185612fdf565b82810360208401526136e28185612fdf565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261377f60a0830186612fdf565b82810360608401526137918186612fdf565b905082810360808401526137a58185613673565b98975050505050505050565b600080604083850312156137c457600080fd5b825167ffffffffffffffff808211156137dc57600080fd5b61357e86838701613473565b808201808211156102e9576102e961339f565b6000845161380d81846020890161344f565b91909101928352506020820152604001919050565b6000845161383481846020890161344f565b8201848152835161384c81602080850190880161344f565b0160200195945050505050565b6000806040838503121561386c57600080fd5b825161387781612c12565b6020939093015192949293505050565b60006020828403121561389957600080fd5b8151612ab181612c12565b6000602082840312156138b657600080fd5b8151612ab18161302d565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261390660a0830184613673565b979650505050505050565b600181815b8085111561396a57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156139505761395061339f565b8085161561395d57918102915b93841c9390800290613916565b509250929050565b600082613981575060016102e9565b8161398e575060006102e9565b81600181146139a457600281146139ae576139ca565b60019150506102e9565b60ff8411156139bf576139bf61339f565b50506001821b6102e9565b5060208310610133831016604e8410600b84101617156139ed575081810a6102e9565b6139f78383613911565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115613a2957613a2961339f565b029392505050565b6000612ab1838361397256fea264697066735822122098715153ff3f6e26d21adb8d6266df69c9a6c72e3392cd72e1a68e86932d315b64736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b50613a73806100206000396000f3fe608060405234801561001057600080fd5b50600436106100e95760003560e01c8063ce0b514b1161008c578063eaec5f8111610066578063eaec5f811461024c578063f242432a1461025f578063f5d4c82014610272578063fa4e12d71461028557600080fd5b8063ce0b514b146101c8578063db90e83c146101db578063e985e9c51461020357600080fd5b80632eb2c2d6116100c85780632eb2c2d61461016d5780634e1273f414610182578063a22cb465146101a2578063a3d4926e146101b557600080fd5b8062fdd58e146100ee57806301ffc9a7146101145780632d0335ab14610137575b600080fd5b6101016100fc366004612c37565b610298565b6040519081526020015b60405180910390f35b610127610122366004612c91565b6102ef565b604051901515815260200161010b565b610101610145366004612cae565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61018061017b366004612e6f565b61038c565b005b610195610190366004612f1d565b610535565b60405161010b919061301a565b6101806101b036600461303b565b61082f565b6101806101c3366004613074565b6108c6565b6101806101d6366004613135565b610b1e565b6101ee6101e93660046131af565b610c8e565b6040805192835260208301919091520161010b565b6101276102113660046131c8565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61010161025a3660046131f6565b610cc8565b61018061026d366004613218565b610cf6565b610180610280366004613281565b610e93565b6101276102933660046132f0565b610fea565b60008060006102a684610c8e565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506102e49082610cc8565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161034257506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102e9565b3373ffffffffffffffffffffffffffffffffffffffff861614806103e0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610471576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8416610514576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610468565b61052085858585611833565b61052e858585855a86611c96565b5050505050565b815181516060919081146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610468565b6000806105f1856000815181106105e4576105e4613370565b6020026020010151610c8e565b9150915060008060008860008151811061060d5761060d613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561068357610683612ccb565b6040519080825280602002602001820160405280156106ac578160200160208202803683370190505b5090506106b98385610cc8565b816000815181106106cc576106cc613370565b602090810291909101015260015b86811015610822576106f78982815181106105e4576105e4613370565b90965094508286141580610775575089818151811061071857610718613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361074491906133ce565b8151811061075457610754613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156107e9576000808b838151811061078f5761078f613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6107f38486610cc8565b82828151811061080557610805613370565b60209081029190910101528061081a816133e1565b9150506106da565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661098f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a401610468565b60606109d260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610ab489857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610a109190613419565b604051602081830303815290604052805190602001208c604051602001610a379190613419565b604051602081830303815290604052805190602001208c610a59576000610a5c565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e3b565b9050610ac289898989611833565b8415610b055780806020019051810190610adc9190613547565b8094508193505050610af689898989866020015188611c96565b610b0089836120cd565b610b13565b610b13898989895a86611c96565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8516610bc357604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e546064820152608401610468565b6060610c0660405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3e89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a59576000610a5c565b9050610c4c89898989612440565b8415610c805780806020019051810190610c669190613547565b8094508193505050610af6898989898660200151886124b8565b610b13898989895a866124b8565b600080610c9e60206101006135d0565b610ca890846135d0565b9150610cb760206101006135d0565b610cc190846135e4565b9050915091565b600080610cdb60016401000000006133ce565b90506000610cea8460206135f8565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610d4a575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610dd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610468565b73ffffffffffffffffffffffffffffffffffffffff8416610e79576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610468565b610e8585858585612440565b61052e858585855a866124b8565b6000610f1e86837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610ec9576000610ecc565b60015b89610ed8576000610edb565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610aa0565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610fe257600081806020019051810190610fd4919061360f565b9050610fe087826120cd565b505b505050505050565b6000808251116110a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a401610468565b73ffffffffffffffffffffffffffffffffffffffff8516611145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e4552000000000000000000000000006064820152608401610468565b60006111508361265d565b60f81c9050600581106111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b60008160ff1660058111156111fc576111fc613644565b905060008080808085600581111561121657611216613644565b036112a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e4154555245000000000000000000006064820152608401610468565b60018560058111156112b7576112b7613644565b0361142957875160611461134d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b611358886000612760565b9250611365886020612760565b91508760408151811061137a5761137a613370565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156113d7573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061182b9650505050505050565b600285600581111561143d5761143d613644565b036115a35787516061146114d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b6114de886000612760565b92506114eb886020612760565b91508760408151811061150057611500613370565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016113b5565b60038560058111156115b7576115b7613644565b036116a3576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611610908c908c906004016136bd565b602060405180830381865afa15801561162d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b60048560058111156116b7576116b7613644565b036117a3576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611710908d908c90600401613708565b602060405180830381865afa15801561172d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b949350505050565b8151815181146118eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610468565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156119275750600081115b15611b2757600080611945856000815181106105e4576105e4613370565b73ffffffffffffffffffffffffffffffffffffffff89166000908152602081815260408083208584529091528120548751939550919350916119a3919084908890859061199457611994613370565b60200260200101516001612813565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320878452909152812054875192935090916119ff91908590899085906119f0576119f0613370565b60200260200101516000612813565b90508360015b86811015611ad557611a228982815181106105e4576105e4613370565b9096509450818614611a915773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611aa884868a848151811061199457611994613370565b9350611ac183868a84815181106119f0576119f0613370565b925080611acd816133e1565b915050611a05565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611c11565b60005b81811015611c0f57828181518110611b4457611b44613370565b6020026020010151611b6f87868481518110611b6257611b62613370565b6020026020010151610298565b1015611bfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610468565b80611c07816133e1565b915050611b2a565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611c87929190613721565b60405180910390a45050505050565b611cb58573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611cfe959493929190613746565b60206040518083038160008887f1158015611d1d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d4291906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610468565b60608083806020019051810190611e5291906137b1565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e8a836041612760565b9050818110801590611ea55750611ea28260646137e8565b81105b611f31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e4345000000006064820152608401610468565b6000611f6d86838780519060200120604051602001611f52939291906137fb565b60405160208183030381529060405280519060200120612ab8565b90506000868387604051602001611f8693929190613822565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611fc18360016137e8565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf596120168560016137e8565b60405190815260200160405180910390a261203389838388610fea565b6120c157604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e41545552456064820152608401610468565b50505050509392505050565b60006120dc826060015161265d565b60f81c905060028110612171576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e00000000006064820152608401610468565b60008160ff16600281111561218857612188613644565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156121be5786604001516121c0565b335b925060008560028111156121d6576121d6613644565b036122ed5786606001518060200190518101906121f39190613859565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036122435761222188848484612440565b61223e8884845a85604051806020016040528060008152506124b8565b612436565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156122d057600080fd5b505af11580156122e4573d6000803e3d6000fd5b50505050612436565b86606001518060200190518101906123059190613887565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612386573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123aa91906138a4565b612436576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c4544006064820152608401610468565b5050505050505050565b61244d8483836001612b8b565b61245a8383836000612b8b565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6124d78573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016125209594939291906138c1565b60206040518083038160008887f115801561253f573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061256491906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610468565b6000808251116126ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f52455155495245440000000000000000006064820152608401610468565b81600183516126fe91906133ce565b8151811061270e5761270e613370565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b600061276d8260206137e8565b835110156127fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f5245515549524544000000006064820152608401610468565b6128086020836137e8565b929092015192915050565b6000806128218560206135f8565b9050600061283560016401000000006133ce565b9050600084600181111561284b5761284b613644565b0361290a5761285c85831b886137e8565b925061286a60206002613a31565b6128788689851c84166137e8565b10612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610468565b612a74565b600184600181111561291e5761291e613644565b036129c65761292f85831b886133ce565b925084818389901c161015612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610468565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610468565b5050949350505050565b6000813f8015801590612ab157507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612b4592919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612b6e939291906137fb565b604051602081830303815290604052805190602001209050919050565b600080612b9785610c8e565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150612bd790828686612813565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b73ffffffffffffffffffffffffffffffffffffffff81168114612c3457600080fd5b50565b60008060408385031215612c4a57600080fd5b8235612c5581612c12565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612c3457600080fd5b600060208284031215612ca357600080fd5b8135612ab181612c63565b600060208284031215612cc057600080fd5b8135612ab181612c12565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612d4157612d41612ccb565b604052919050565b600067ffffffffffffffff821115612d6357612d63612ccb565b5060051b60200190565b600082601f830112612d7e57600080fd5b81356020612d93612d8e83612d49565b612cfa565b82815260059290921b84018101918181019086841115612db257600080fd5b8286015b84811015612dcd5780358352918301918301612db6565b509695505050505050565b600067ffffffffffffffff821115612df257612df2612ccb565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f830112612e2f57600080fd5b8135612e3d612d8e82612dd8565b818152846020838601011115612e5257600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215612e8757600080fd5b8535612e9281612c12565b94506020860135612ea281612c12565b9350604086013567ffffffffffffffff80821115612ebf57600080fd5b612ecb89838a01612d6d565b94506060880135915080821115612ee157600080fd5b612eed89838a01612d6d565b93506080880135915080821115612f0357600080fd5b50612f1088828901612e1e565b9150509295509295909350565b60008060408385031215612f3057600080fd5b823567ffffffffffffffff80821115612f4857600080fd5b818501915085601f830112612f5c57600080fd5b81356020612f6c612d8e83612d49565b82815260059290921b84018101918181019089841115612f8b57600080fd5b948201945b83861015612fb2578535612fa381612c12565b82529482019490820190612f90565b96505086013592505080821115612fc857600080fd5b50612fd585828601612d6d565b9150509250929050565b600081518084526020808501945080840160005b8381101561300f57815187529582019590820190600101612ff3565b509495945050505050565b602081526000612ab16020830184612fdf565b8015158114612c3457600080fd5b6000806040838503121561304e57600080fd5b823561305981612c12565b915060208301356130698161302d565b809150509250929050565b60008060008060008060c0878903121561308d57600080fd5b863561309881612c12565b955060208701356130a881612c12565b9450604087013567ffffffffffffffff808211156130c557600080fd5b6130d18a838b01612d6d565b955060608901359150808211156130e757600080fd5b6130f38a838b01612d6d565b9450608089013591506131058261302d565b90925060a0880135908082111561311b57600080fd5b5061312889828a01612e1e565b9150509295509295509295565b60008060008060008060c0878903121561314e57600080fd5b863561315981612c12565b9550602087013561316981612c12565b9450604087013593506060870135925060808701356131878161302d565b915060a087013567ffffffffffffffff8111156131a357600080fd5b61312889828a01612e1e565b6000602082840312156131c157600080fd5b5035919050565b600080604083850312156131db57600080fd5b82356131e681612c12565b9150602083013561306981612c12565b6000806040838503121561320957600080fd5b50508035926020909101359150565b600080600080600060a0868803121561323057600080fd5b853561323b81612c12565b9450602086013561324b81612c12565b93506040860135925060608601359150608086013567ffffffffffffffff81111561327557600080fd5b612f1088828901612e1e565b600080600080600060a0868803121561329957600080fd5b85356132a481612c12565b945060208601356132b481612c12565b935060408601356132c48161302d565b925060608601356132d48161302d565b9150608086013567ffffffffffffffff81111561327557600080fd5b6000806000806080858703121561330657600080fd5b843561331181612c12565b935060208501359250604085013567ffffffffffffffff8082111561333557600080fd5b61334188838901612e1e565b9350606087013591508082111561335757600080fd5b5061336487828801612e1e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156102e9576102e961339f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036134125761341261339f565b5060010190565b815160009082906020808601845b8381101561344357815185529382019390820190600101613427565b50929695505050505050565b60005b8381101561346a578181015183820152602001613452565b50506000910152565b600082601f83011261348457600080fd5b8151613492612d8e82612dd8565b8181528460208386010111156134a757600080fd5b61182b82602083016020870161344f565b6000608082840312156134ca57600080fd5b6040516080810167ffffffffffffffff82821081831117156134ee576134ee612ccb565b8160405282935084518352602085015160208401526040850151915061351382612c12565b816040840152606085015191508082111561352d57600080fd5b5061353a85828601613473565b6060830152505092915050565b6000806040838503121561355a57600080fd5b825167ffffffffffffffff8082111561357257600080fd5b61357e868387016134b8565b9350602085015191508082111561359457600080fd5b50612fd585828601613473565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826135df576135df6135a1565b500490565b6000826135f3576135f36135a1565b500690565b80820281158282048414176102e9576102e961339f565b60006020828403121561362157600080fd5b815167ffffffffffffffff81111561363857600080fd5b61182b848285016134b8565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000815180845261368b81602086016020860161344f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6040815260006136d06040830185613673565b82810360208401526136e28185613673565b95945050505050565b6000602082840312156136fd57600080fd5b8151612ab181612c63565b82815260406020820152600061182b6040830184613673565b6040815260006137346040830185612fdf565b82810360208401526136e28185612fdf565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261377f60a0830186612fdf565b82810360608401526137918186612fdf565b905082810360808401526137a58185613673565b98975050505050505050565b600080604083850312156137c457600080fd5b825167ffffffffffffffff808211156137dc57600080fd5b61357e86838701613473565b808201808211156102e9576102e961339f565b6000845161380d81846020890161344f565b91909101928352506020820152604001919050565b6000845161383481846020890161344f565b8201848152835161384c81602080850190880161344f565b0160200195945050505050565b6000806040838503121561386c57600080fd5b825161387781612c12565b6020939093015192949293505050565b60006020828403121561389957600080fd5b8151612ab181612c12565b6000602082840312156138b657600080fd5b8151612ab18161302d565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261390660a0830184613673565b979650505050505050565b600181815b8085111561396a57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156139505761395061339f565b8085161561395d57918102915b93841c9390800290613916565b509250929050565b600082613981575060016102e9565b8161398e575060006102e9565b81600181146139a457600281146139ae576139ca565b60019150506102e9565b60ff8411156139bf576139bf61339f565b50506001821b6102e9565b5060208310610133831016604e8410600b84101617156139ed575081810a6102e9565b6139f78383613911565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115613a2957613a2961339f565b029392505050565b6000612ab1838361397256fea2646970667358221220b559223319062da8a6588874e441c8258c7881dd56f24a559eccb36a92cb633f64736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100e95760003560e01c8063ce0b514b1161008c578063eaec5f8111610066578063eaec5f811461024c578063f242432a1461025f578063f5d4c82014610272578063fa4e12d71461028557600080fd5b8063ce0b514b146101c8578063db90e83c146101db578063e985e9c51461020357600080fd5b80632eb2c2d6116100c85780632eb2c2d61461016d5780634e1273f414610182578063a22cb465146101a2578063a3d4926e146101b557600080fd5b8062fdd58e146100ee57806301ffc9a7146101145780632d0335ab14610137575b600080fd5b6101016100fc366004612c37565b610298565b6040519081526020015b60405180910390f35b610127610122366004612c91565b6102ef565b604051901515815260200161010b565b610101610145366004612cae565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205490565b61018061017b366004612e6f565b61038c565b005b610195610190366004612f1d565b610535565b60405161010b919061301a565b6101806101b036600461303b565b61082f565b6101806101c3366004613074565b6108c6565b6101806101d6366004613135565b610b1e565b6101ee6101e93660046131af565b610c8e565b6040805192835260208301919091520161010b565b6101276102113660046131c8565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b61010161025a3660046131f6565b610cc8565b61018061026d366004613218565b610cf6565b610180610280366004613281565b610e93565b6101276102933660046132f0565b610fea565b60008060006102a684610c8e565b73ffffffffffffffffffffffffffffffffffffffff871660009081526020818152604080832085845290915290205491935091506102e49082610cc8565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161034257506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146102e9565b3373ffffffffffffffffffffffffffffffffffffffff861614806103e0575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610471576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8416610514576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e540000006064820152608401610468565b61052085858585611833565b61052e858585855a86611c96565b5050505050565b815181516060919081146105cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e475448000000000000006064820152608401610468565b6000806105f1856000815181106105e4576105e4613370565b6020026020010151610c8e565b9150915060008060008860008151811061060d5761060d613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff81111561068357610683612ccb565b6040519080825280602002602001820160405280156106ac578160200160208202803683370190505b5090506106b98385610cc8565b816000815181106106cc576106cc613370565b602090810291909101015260015b86811015610822576106f78982815181106105e4576105e4613370565b90965094508286141580610775575089818151811061071857610718613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361074491906133ce565b8151811061075457610754613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b156107e9576000808b838151811061078f5761078f613370565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b6107f38486610cc8565b82828151811061080557610805613370565b60209081029190910101528061081a816133e1565b9150506106da565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff851661098f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f6542617463685472616e7366657246726f6d3a20494e56414c49445f5245434960648201527f5049454e54000000000000000000000000000000000000000000000000000000608482015260a401610468565b60606109d260405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610ab489857fa3d4926e8cf8fe8e020cd29f514c256bc2eec62aa2337e415f1a33a4828af5a060001b8c8c8c604051602001610a109190613419565b604051602081830303815290604052805190602001208c604051602001610a379190613419565b604051602081830303815290604052805190602001208c610a59576000610a5c565b60015b60408051602081019790975273ffffffffffffffffffffffffffffffffffffffff95861690870152939092166060850152608084015260a083015260c082015260e0015b604051602081830303815290604052611e3b565b9050610ac289898989611833565b8415610b055780806020019051810190610adc9190613547565b8094508193505050610af689898989866020015188611c96565b610b0089836120cd565b610b13565b610b13898989895a86611c96565b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff8516610bc357604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365236d65746153616660448201527f655472616e7366657246726f6d3a20494e56414c49445f524543495049454e546064820152608401610468565b6060610c0660405180608001604052806000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b6000610c3e89857fce0b514b3931bdbe4d5d44e4f035afe7113767b7db71949271f6a62d9c60f558828c8c8c8c610a59576000610a5c565b9050610c4c89898989612440565b8415610c805780806020019051810190610c669190613547565b8094508193505050610af6898989898660200151886124b8565b610b13898989895a866124b8565b600080610c9e60206101006135d0565b610ca890846135d0565b9150610cb760206101006135d0565b610cc190846135e4565b9050915091565b600080610cdb60016401000000006133ce565b90506000610cea8460206135f8565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff86161480610d4a575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610dd6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f520000000000000000006064820152608401610468565b73ffffffffffffffffffffffffffffffffffffffff8416610e79576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e5400000000000000006064820152608401610468565b610e8585858585612440565b61052e858585855a866124b8565b6000610f1e86837ff5d4c820494c8595de274c7ff619bead38aac4fbc3d143b5bf956aa4b84fa524828989610ec9576000610ecc565b60015b89610ed8576000610edb565b60015b60408051602081019690965273ffffffffffffffffffffffffffffffffffffffff94851690860152929091166060840152608083015260a082015260c001610aa0565b73ffffffffffffffffffffffffffffffffffffffff8781166000818152600160209081526040808320948b168084529482529182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168a15159081179091559151918252939450919290917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a38215610fe257600081806020019051810190610fd4919061360f565b9050610fe087826120cd565b505b505050505050565b6000808251116110a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a401610468565b73ffffffffffffffffffffffffffffffffffffffff8516611145576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e4552000000000000000000000000006064820152608401610468565b60006111508361265d565b60f81c9050600581106111e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b60008160ff1660058111156111fc576111fc613644565b905060008080808085600581111561121657611216613644565b036112a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e4154555245000000000000000000006064820152608401610468565b60018560058111156112b7576112b7613644565b0361142957875160611461134d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b611358886000612760565b9250611365886020612760565b91508760408151811061137a5761137a613370565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa1580156113d7573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061182b9650505050505050565b600285600581111561143d5761143d613644565b036115a35787516061146114d3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f52455155495245440000000000000000006064820152608401610468565b6114de886000612760565b92506114eb886020612760565b91508760408151811061150057611500613370565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a0016113b5565b60038560058111156115b7576115b7613644565b036116a3576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90611610908c908c906004016136bd565b602060405180830381865afa15801561162d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061165191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b60048560058111156116b7576116b7613644565b036117a3576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90611710908d908c90600401613708565b602060405180830381865afa15801561172d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061175191906136eb565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061182b95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e41545552450000000000006064820152608401610468565b949350505050565b8151815181146118eb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a401610468565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156119275750600081115b15611b2757600080611945856000815181106105e4576105e4613370565b73ffffffffffffffffffffffffffffffffffffffff89166000908152602081815260408083208584529091528120548751939550919350916119a3919084908890859061199457611994613370565b60200260200101516001612813565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320878452909152812054875192935090916119ff91908590899085906119f0576119f0613370565b60200260200101516000612813565b90508360015b86811015611ad557611a228982815181106105e4576105e4613370565b9096509450818614611a915773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b611aa884868a848151811061199457611994613370565b9350611ac183868a84815181106119f0576119f0613370565b925080611acd816133e1565b915050611a05565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550611c11565b60005b81811015611c0f57828181518110611b4457611b44613370565b6020026020010151611b6f87868481518110611b6257611b62613370565b6020026020010151610298565b1015611bfd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f57000000000000000000006064820152608401610468565b80611c07816133e1565b915050611b2a565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051611c87929190613721565b60405180910390a45050505050565b611cb58573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401611cfe959493929190613746565b60206040518083038160008887f1158015611d1d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d4291906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c810000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a401610468565b60608083806020019051810190611e5291906137b1565b73ffffffffffffffffffffffffffffffffffffffff871660009081526002602052604081205491945091925090611e8a836041612760565b9050818110801590611ea55750611ea28260646137e8565b81105b611f31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f4e4f4e4345000000006064820152608401610468565b6000611f6d86838780519060200120604051602001611f52939291906137fb565b60405160208183030381529060405280519060200120612ab8565b90506000868387604051602001611f8693929190613822565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529190529050611fc18360016137e8565b73ffffffffffffffffffffffffffffffffffffffff8a166000818152600260205260409020919091557fb861b7bdbe611a846ab271b8d2810391bc8b5a968f390c322438ecab66bccf596120168560016137e8565b60405190815260200160405180910390a261203389838388610fea565b6120c157604080517f08c379a00000000000000000000000000000000000000000000000000000000081526020600482015260248101919091527f455243313135354d6574615061636b656442616c616e6365235f7369676e617460448201527f75726556616c69646174696f6e3a20494e56414c49445f5349474e41545552456064820152608401610468565b50505050509392505050565b60006120dc826060015161265d565b60f81c905060028110612171576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603b60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a20554e535550504f525445445f544f4b454e00000000006064820152608401610468565b60008160ff16600281111561218857612188613644565b835160408501519192506000918291829173ffffffffffffffffffffffffffffffffffffffff16156121be5786604001516121c0565b335b925060008560028111156121d6576121d6613644565b036122ed5786606001518060200190518101906121f39190613859565b90945091503073ffffffffffffffffffffffffffffffffffffffff8516036122435761222188848484612440565b61223e8884845a85604051806020016040528060008152506124b8565b612436565b6040517ff242432a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff89811660048301528481166024830152604482018490526064820183905260a06084830152600060a483015285169063f242432a9060c401600060405180830381600087803b1580156122d057600080fd5b505af11580156122e4573d6000803e3d6000fd5b50505050612436565b86606001518060200190518101906123059190613887565b6040517f23b872dd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a81166004830152858116602483015260448201849052919550908516906323b872dd906064016020604051808303816000875af1158015612386573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123aa91906138a4565b612436576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603f60248201527f455243313135354d6574615061636b656442616c616e6365235f7472616e736660448201527f65724761734665653a2045524332305f5452414e534645525f4641494c4544006064820152608401610468565b5050505050505050565b61244d8483836001612b8b565b61245a8383836000612b8b565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6124d78573ffffffffffffffffffffffffffffffffffffffff16612a7e565b15610fe25760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016125209594939291906138c1565b60206040518083038160008887f115801561253f573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061256491906136eb565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e610000000000000000000000000000000000000000000000000000000014610fe0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a401610468565b6000808251116126ef576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f52455155495245440000000000000000006064820152608401610468565b81600183516126fe91906133ce565b8151811061270e5761270e613370565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b600061276d8260206137e8565b835110156127fd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f5245515549524544000000006064820152608401610468565b6128086020836137e8565b929092015192915050565b6000806128218560206135f8565b9050600061283560016401000000006133ce565b9050600084600181111561284b5761284b613644565b0361290a5761285c85831b886137e8565b925061286a60206002613a31565b6128788689851c84166137e8565b10612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f5700000000000000000000000000006064820152608401610468565b612a74565b600184600181111561291e5761291e613644565b036129c65761292f85831b886133ce565b925084818389901c161015612905576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f57000000000000000000000000006064820152608401610468565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a401610468565b5050949350505050565b6000813f8015801590612ab157507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b60006040518060400160405280600281526020017f19010000000000000000000000000000000000000000000000000000000000008152507f035aff83d86937d35b32e04f0ddc6ff469290eef2f1b692d8a815c89404d474960001b30604051602001612b4592919091825273ffffffffffffffffffffffffffffffffffffffff16602082015260400190565b6040516020818303038152906040528051906020012083604051602001612b6e939291906137fb565b604051602081830303815290604052805190602001209050919050565b600080612b9785610c8e565b73ffffffffffffffffffffffffffffffffffffffff88166000908152602081815260408083208584529091529020549193509150612bd790828686612813565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b73ffffffffffffffffffffffffffffffffffffffff81168114612c3457600080fd5b50565b60008060408385031215612c4a57600080fd5b8235612c5581612c12565b946020939093013593505050565b7fffffffff0000000000000000000000000000000000000000000000000000000081168114612c3457600080fd5b600060208284031215612ca357600080fd5b8135612ab181612c63565b600060208284031215612cc057600080fd5b8135612ab181612c12565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715612d4157612d41612ccb565b604052919050565b600067ffffffffffffffff821115612d6357612d63612ccb565b5060051b60200190565b600082601f830112612d7e57600080fd5b81356020612d93612d8e83612d49565b612cfa565b82815260059290921b84018101918181019086841115612db257600080fd5b8286015b84811015612dcd5780358352918301918301612db6565b509695505050505050565b600067ffffffffffffffff821115612df257612df2612ccb565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600082601f830112612e2f57600080fd5b8135612e3d612d8e82612dd8565b818152846020838601011115612e5257600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a08688031215612e8757600080fd5b8535612e9281612c12565b94506020860135612ea281612c12565b9350604086013567ffffffffffffffff80821115612ebf57600080fd5b612ecb89838a01612d6d565b94506060880135915080821115612ee157600080fd5b612eed89838a01612d6d565b93506080880135915080821115612f0357600080fd5b50612f1088828901612e1e565b9150509295509295909350565b60008060408385031215612f3057600080fd5b823567ffffffffffffffff80821115612f4857600080fd5b818501915085601f830112612f5c57600080fd5b81356020612f6c612d8e83612d49565b82815260059290921b84018101918181019089841115612f8b57600080fd5b948201945b83861015612fb2578535612fa381612c12565b82529482019490820190612f90565b96505086013592505080821115612fc857600080fd5b50612fd585828601612d6d565b9150509250929050565b600081518084526020808501945080840160005b8381101561300f57815187529582019590820190600101612ff3565b509495945050505050565b602081526000612ab16020830184612fdf565b8015158114612c3457600080fd5b6000806040838503121561304e57600080fd5b823561305981612c12565b915060208301356130698161302d565b809150509250929050565b60008060008060008060c0878903121561308d57600080fd5b863561309881612c12565b955060208701356130a881612c12565b9450604087013567ffffffffffffffff808211156130c557600080fd5b6130d18a838b01612d6d565b955060608901359150808211156130e757600080fd5b6130f38a838b01612d6d565b9450608089013591506131058261302d565b90925060a0880135908082111561311b57600080fd5b5061312889828a01612e1e565b9150509295509295509295565b60008060008060008060c0878903121561314e57600080fd5b863561315981612c12565b9550602087013561316981612c12565b9450604087013593506060870135925060808701356131878161302d565b915060a087013567ffffffffffffffff8111156131a357600080fd5b61312889828a01612e1e565b6000602082840312156131c157600080fd5b5035919050565b600080604083850312156131db57600080fd5b82356131e681612c12565b9150602083013561306981612c12565b6000806040838503121561320957600080fd5b50508035926020909101359150565b600080600080600060a0868803121561323057600080fd5b853561323b81612c12565b9450602086013561324b81612c12565b93506040860135925060608601359150608086013567ffffffffffffffff81111561327557600080fd5b612f1088828901612e1e565b600080600080600060a0868803121561329957600080fd5b85356132a481612c12565b945060208601356132b481612c12565b935060408601356132c48161302d565b925060608601356132d48161302d565b9150608086013567ffffffffffffffff81111561327557600080fd5b6000806000806080858703121561330657600080fd5b843561331181612c12565b935060208501359250604085013567ffffffffffffffff8082111561333557600080fd5b61334188838901612e1e565b9350606087013591508082111561335757600080fd5b5061336487828801612e1e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b818103818111156102e9576102e961339f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036134125761341261339f565b5060010190565b815160009082906020808601845b8381101561344357815185529382019390820190600101613427565b50929695505050505050565b60005b8381101561346a578181015183820152602001613452565b50506000910152565b600082601f83011261348457600080fd5b8151613492612d8e82612dd8565b8181528460208386010111156134a757600080fd5b61182b82602083016020870161344f565b6000608082840312156134ca57600080fd5b6040516080810167ffffffffffffffff82821081831117156134ee576134ee612ccb565b8160405282935084518352602085015160208401526040850151915061351382612c12565b816040840152606085015191508082111561352d57600080fd5b5061353a85828601613473565b6060830152505092915050565b6000806040838503121561355a57600080fd5b825167ffffffffffffffff8082111561357257600080fd5b61357e868387016134b8565b9350602085015191508082111561359457600080fd5b50612fd585828601613473565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826135df576135df6135a1565b500490565b6000826135f3576135f36135a1565b500690565b80820281158282048414176102e9576102e961339f565b60006020828403121561362157600080fd5b815167ffffffffffffffff81111561363857600080fd5b61182b848285016134b8565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b6000815180845261368b81602086016020860161344f565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6040815260006136d06040830185613673565b82810360208401526136e28185613673565b95945050505050565b6000602082840312156136fd57600080fd5b8151612ab181612c63565b82815260406020820152600061182b6040830184613673565b6040815260006137346040830185612fdf565b82810360208401526136e28185612fdf565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a0604083015261377f60a0830186612fdf565b82810360608401526137918186612fdf565b905082810360808401526137a58185613673565b98975050505050505050565b600080604083850312156137c457600080fd5b825167ffffffffffffffff808211156137dc57600080fd5b61357e86838701613473565b808201808211156102e9576102e961339f565b6000845161380d81846020890161344f565b91909101928352506020820152604001919050565b6000845161383481846020890161344f565b8201848152835161384c81602080850190880161344f565b0160200195945050505050565b6000806040838503121561386c57600080fd5b825161387781612c12565b6020939093015192949293505050565b60006020828403121561389957600080fd5b8151612ab181612c12565b6000602082840312156138b657600080fd5b8151612ab18161302d565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a0608083015261390660a0830184613673565b979650505050505050565b600181815b8085111561396a57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048211156139505761395061339f565b8085161561395d57918102915b93841c9390800290613916565b509250929050565b600082613981575060016102e9565b8161398e575060006102e9565b81600181146139a457600281146139ae576139ca565b60019150506102e9565b60ff8411156139bf576139bf61339f565b50506001821b6102e9565b5060208310610133831016604e8410600b84101617156139ed575081810a6102e9565b6139f78383613911565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115613a2957613a2961339f565b029392505050565b6000612ab1838361397256fea2646970667358221220b559223319062da8a6588874e441c8258c7881dd56f24a559eccb36a92cb633f64736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance.sol/ERC1155MintBurnPackedBalance.json b/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance.sol/ERC1155MintBurnPackedBalance.json index 457ffac..c84e2ea 100644 --- a/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance.sol/ERC1155MintBurnPackedBalance.json +++ b/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155MintBurnPackedBalance.sol/ERC1155MintBurnPackedBalance.json @@ -326,8 +326,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212207c940e53b85785a9e9696ed245fe0b69b28d15ee0aa47858d9b928543d5327fe64736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212207c940e53b85785a9e9696ed245fe0b69b28d15ee0aa47858d9b928543d5327fe64736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212202cced22345fda755dd55b0fc8eb873ea916b82a969b4861b9e184818a10fab8564736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212202cced22345fda755dd55b0fc8eb873ea916b82a969b4861b9e184818a10fab8564736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155PackedBalance.sol/ERC1155PackedBalance.json b/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155PackedBalance.sol/ERC1155PackedBalance.json index 1dec480..22be692 100644 --- a/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155PackedBalance.sol/ERC1155PackedBalance.json +++ b/src/artifacts/contracts/tokens/ERC1155PackedBalance/ERC1155PackedBalance.sol/ERC1155PackedBalance.json @@ -326,8 +326,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212204eec66abcd235a11d6c0b62912548539871161268ae44a9e452076abd032582964736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea26469706673582212204eec66abcd235a11d6c0b62912548539871161268ae44a9e452076abd032582964736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b50611e85806100206000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea264697066735822122038794a57bf8c1e26523242d52ba5aa85867fc07bea3fe62188e13b6f70f87eb464736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100a25760003560e01c8063a22cb46511610076578063e985e9c51161005b578063e985e9c514610160578063eaec5f81146101a9578063f242432a146101bc57600080fd5b8063a22cb46514610125578063db90e83c1461013857600080fd5b8062fdd58e146100a757806301ffc9a7146100cd5780632eb2c2d6146100f05780634e1273f414610105575b600080fd5b6100ba6100b5366004611586565b6101cf565b6040519081526020015b60405180910390f35b6100e06100db3660046115e1565b610226565b60405190151581526020016100c4565b6101036100fe366004611799565b6102c3565b005b610118610113366004611843565b61046c565b6040516100c4919061193e565b610103610133366004611951565b610766565b61014b61014636600461198d565b6107fd565b604080519283526020830191909152016100c4565b6100e061016e3660046119a6565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260016020908152604080832093909416825291909152205460ff1690565b6100ba6101b73660046119d9565b610837565b6101036101ca3660046119fb565b610865565b60008060006101dd846107fd565b73ffffffffffffffffffffffffffffffffffffffff8716600090815260208181526040808320858452909152902054919350915061021b9082610837565b925050505b92915050565b60007f264985da000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161027957506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff00000000000000000000000000000000000000000000000000000000831614610220565b3373ffffffffffffffffffffffffffffffffffffffff86161480610317575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b6103a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f4f50455241544f520000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff841661044b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603d60248201527f455243313135355061636b656442616c616e636523736166654261746368547260448201527f616e7366657246726f6d3a20494e56414c49445f524543495049454e54000000606482015260840161039f565b61045785858585610a02565b610465858585855a86610e65565b5050505050565b81518151606091908114610502576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603960248201527f455243313135355061636b656442616c616e63652362616c616e63654f66426160448201527f7463683a20494e56414c49445f41525241595f4c454e47544800000000000000606482015260840161039f565b6000806105288560008151811061051b5761051b611a60565b60200260200101516107fd565b9150915060008060008860008151811061054457610544611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050600083905060008567ffffffffffffffff8111156105ba576105ba6115fe565b6040519080825280602002602001820160405280156105e3578160200160208202803683370190505b5090506105f08385610837565b8160008151811061060357610603611a60565b602090810291909101015260015b868110156107595761062e89828151811061051b5761051b611a60565b909650945082861415806106ac575089818151811061064f5761064f611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff168a60018361067b9190611abe565b8151811061068b5761068b611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614155b15610720576000808b83815181106106c6576106c6611a60565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008781526020019081526020016000205493508592505b61072a8486610837565b82828151811061073c5761073c611a60565b60209081029190910101528061075181611ad1565b915050610611565b5098975050505050505050565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff87168085529083529281902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081529192917f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a35050565b60008061080d6020610100611b38565b6108179084611b38565b91506108266020610100611b38565b6108309084611b4c565b9050915091565b60008061084a6001640100000000611abe565b90506000610859846020611b60565b9490941c169392505050565b3373ffffffffffffffffffffffffffffffffffffffff861614806108b9575073ffffffffffffffffffffffffffffffffffffffff8516600090815260016020908152604080832033845290915290205460ff165b610945576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f4f50455241544f52000000000000000000606482015260840161039f565b73ffffffffffffffffffffffffffffffffffffffff84166109e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f455243313135355061636b656442616c616e636523736166655472616e73666560448201527f7246726f6d3a20494e56414c49445f524543495049454e540000000000000000606482015260840161039f565b6109f485858585611014565b610465858585855a8661108c565b815181518114610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604260248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20494e56414c49445f4152524159535f4c454e4760648201527f5448000000000000000000000000000000000000000000000000000000000000608482015260a40161039f565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614158015610af65750600081115b15610cf657600080610b148560008151811061051b5761051b611a60565b73ffffffffffffffffffffffffffffffffffffffff8916600090815260208181526040808320858452909152812054875193955091935091610b729190849088908590610b6357610b63611a60565b60200260200101516001611231565b73ffffffffffffffffffffffffffffffffffffffff881660009081526020818152604080832087845290915281205487519293509091610bce9190859089908590610bbf57610bbf611a60565b60200260200101516000611231565b90508360015b86811015610ca457610bf189828151811061051b5761051b611a60565b9096509450818614610c605773ffffffffffffffffffffffffffffffffffffffff8b811660009081526020818152604080832086845280835281842098909855928d16825281815282822094825284815282822095909555878152948452808520549290935291909220549084905b610c7784868a8481518110610b6357610b63611a60565b9350610c9083868a8481518110610bbf57610bbf611a60565b925080610c9c81611ad1565b915050610bd4565b505073ffffffffffffffffffffffffffffffffffffffff808a16600090815260208181526040808320888452825280832095909555918a16815280825283812095815294905292209190915550610de0565b60005b81811015610dde57828181518110610d1357610d13611a60565b6020026020010151610d3e87868481518110610d3157610d31611a60565b60200260200101516101cf565b1015610dcc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f455243313135355061636b656442616c616e6365235f7361666542617463685460448201527f72616e7366657246726f6d3a20554e444552464c4f5700000000000000000000606482015260840161039f565b80610dd681611ad1565b915050610cf9565b505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051610e56929190611b77565b60405180910390a45050505050565b610e848573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663bc197c8184338a8989886040518763ffffffff1660e01b8152600401610ecd959493929190611c09565b60206040518083038160008887f1158015610eec573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610f119190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c81000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604c60248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f313535426174636852656365697665643a20494e56414c49445f4f4e5f52454360648201527f454956455f4d4553534147450000000000000000000000000000000000000000608482015260a40161039f565b505b505050505050565b61102184838360016114d6565b61102e83838360006114d6565b604080518381526020810183905273ffffffffffffffffffffffffffffffffffffffff808616929087169133917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a450505050565b6110ab8573ffffffffffffffffffffffffffffffffffffffff1661149c565b1561100c5760008573ffffffffffffffffffffffffffffffffffffffff1663f23a6e6184338a8989886040518763ffffffff1660e01b81526004016110f4959493929190611c91565b60206040518083038160008887f1158015611113573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906111389190611c74565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e61000000000000000000000000000000000000000000000000000000001461100a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604760248201527f455243313135355061636b656442616c616e6365235f63616c6c6f6e4552433160448201527f31353552656365697665643a20494e56414c49445f4f4e5f524543454956455f60648201527f4d45535341474500000000000000000000000000000000000000000000000000608482015260a40161039f565b60008061123f856020611b60565b905060006112536001640100000000611abe565b9050600084600181111561126957611269611ce1565b036113285761127a85831b88611d10565b925061128860206002611e43565b6112968689851c8416611d10565b10611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603260248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a204f564552464c4f570000000000000000000000000000606482015260840161039f565b611492565b600184600181111561133c5761133c611ce1565b036113e45761134d85831b88611abe565b925084818389901c161015611323576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20554e444552464c4f5700000000000000000000000000606482015260840161039f565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604560248201527f455243313135355061636b656442616c616e6365235f7669657755706461746560448201527f42696e56616c75653a20494e56414c49445f42494e5f57524954455f4f50455260648201527f4154494f4e000000000000000000000000000000000000000000000000000000608482015260a40161039f565b5050949350505050565b6000813f80158015906114cf57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b6000806114e2856107fd565b73ffffffffffffffffffffffffffffffffffffffff8816600090815260208181526040808320858452909152902054919350915061152290828686611231565b73ffffffffffffffffffffffffffffffffffffffff909616600090815260208181526040808320948352939052919091209490945550505050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461158157600080fd5b919050565b6000806040838503121561159957600080fd5b6115a28361155d565b946020939093013593505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146115de57600080fd5b50565b6000602082840312156115f357600080fd5b81356114cf816115b0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715611674576116746115fe565b604052919050565b600067ffffffffffffffff821115611696576116966115fe565b5060051b60200190565b600082601f8301126116b157600080fd5b813560206116c66116c18361167c565b61162d565b82815260059290921b840181019181810190868411156116e557600080fd5b8286015b8481101561170057803583529183019183016116e9565b509695505050505050565b600082601f83011261171c57600080fd5b813567ffffffffffffffff811115611736576117366115fe565b61176760207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8401160161162d565b81815284602083860101111561177c57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a086880312156117b157600080fd5b6117ba8661155d565b94506117c86020870161155d565b9350604086013567ffffffffffffffff808211156117e557600080fd5b6117f189838a016116a0565b9450606088013591508082111561180757600080fd5b61181389838a016116a0565b9350608088013591508082111561182957600080fd5b506118368882890161170b565b9150509295509295909350565b6000806040838503121561185657600080fd5b823567ffffffffffffffff8082111561186e57600080fd5b818501915085601f83011261188257600080fd5b813560206118926116c18361167c565b82815260059290921b840181019181810190898411156118b157600080fd5b948201945b838610156118d6576118c78661155d565b825294820194908201906118b6565b965050860135925050808211156118ec57600080fd5b506118f9858286016116a0565b9150509250929050565b600081518084526020808501945080840160005b8381101561193357815187529582019590820190600101611917565b509495945050505050565b6020815260006114cf6020830184611903565b6000806040838503121561196457600080fd5b61196d8361155d565b91506020830135801515811461198257600080fd5b809150509250929050565b60006020828403121561199f57600080fd5b5035919050565b600080604083850312156119b957600080fd5b6119c28361155d565b91506119d06020840161155d565b90509250929050565b600080604083850312156119ec57600080fd5b50508035926020909101359150565b600080600080600060a08688031215611a1357600080fd5b611a1c8661155d565b9450611a2a6020870161155d565b93506040860135925060608601359150608086013567ffffffffffffffff811115611a5457600080fd5b6118368882890161170b565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8181038181111561022057610220611a8f565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611b0257611b02611a8f565b5060010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600082611b4757611b47611b09565b500490565b600082611b5b57611b5b611b09565b500690565b808202811582820484141761022057610220611a8f565b604081526000611b8a6040830185611903565b8281036020840152611b9c8185611903565b95945050505050565b6000815180845260005b81811015611bcb57602081850181015186830182015201611baf565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525060a06040830152611c4260a0830186611903565b8281036060840152611c548186611903565b90508281036080840152611c688185611ba5565b98975050505050505050565b600060208284031215611c8657600080fd5b81516114cf816115b0565b600073ffffffffffffffffffffffffffffffffffffffff808816835280871660208401525084604083015283606083015260a06080830152611cd660a0830184611ba5565b979650505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b8082018082111561022057610220611a8f565b600181815b80851115611d7c57817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611d6257611d62611a8f565b80851615611d6f57918102915b93841c9390800290611d28565b509250929050565b600082611d9357506001610220565b81611da057506000610220565b8160018114611db65760028114611dc057611ddc565b6001915050610220565b60ff841115611dd157611dd1611a8f565b50506001821b610220565b5060208310610133831016604e8410600b8410161715611dff575081810a610220565b611e098383611d23565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611e3b57611e3b611a8f565b029392505050565b60006114cf8383611d8456fea264697066735822122038794a57bf8c1e26523242d52ba5aa85867fc07bea3fe62188e13b6f70f87eb464736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/tokens/ERC2981/ERC2981Global.sol/ERC2981Global.json b/src/artifacts/contracts/tokens/ERC2981/ERC2981Global.sol/ERC2981Global.json index b402da8..73e05d5 100644 --- a/src/artifacts/contracts/tokens/ERC2981/ERC2981Global.sol/ERC2981Global.json +++ b/src/artifacts/contracts/tokens/ERC2981/ERC2981Global.sol/ERC2981Global.json @@ -70,8 +70,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b506102e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a7146100465780632a55205a1461006e578063c9823cc6146100ad575b600080fd5b6100596100543660046101cc565b6100d1565b60405190151581526020015b60405180910390f35b61008161007c366004610215565b610170565b6040805173ffffffffffffffffffffffffffffffffffffffff9093168352602083019190915201610065565b6000546001546100819173ffffffffffffffffffffffffffffffffffffffff169082565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161012457506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b604080518082019091526000805473ffffffffffffffffffffffffffffffffffffffff1680835260015460208401819052919283929091906103e8906101b69087610237565b6101c09190610275565b92509250509250929050565b6000602082840312156101de57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461020e57600080fd5b9392505050565b6000806040838503121561022857600080fd5b50508035926020909101359150565b808202811582820484141761016a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826102ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea264697066735822122087687791d7575f4a7d1f0def9dcfe1ad5904d82c618342ff386dcc36b20e759a64736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a7146100465780632a55205a1461006e578063c9823cc6146100ad575b600080fd5b6100596100543660046101cc565b6100d1565b60405190151581526020015b60405180910390f35b61008161007c366004610215565b610170565b6040805173ffffffffffffffffffffffffffffffffffffffff9093168352602083019190915201610065565b6000546001546100819173ffffffffffffffffffffffffffffffffffffffff169082565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161012457506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b604080518082019091526000805473ffffffffffffffffffffffffffffffffffffffff1680835260015460208401819052919283929091906103e8906101b69087610237565b6101c09190610275565b92509250509250929050565b6000602082840312156101de57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461020e57600080fd5b9392505050565b6000806040838503121561022857600080fd5b50508035926020909101359150565b808202811582820484141761016a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826102ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea264697066735822122087687791d7575f4a7d1f0def9dcfe1ad5904d82c618342ff386dcc36b20e759a64736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b506102e6806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a7146100465780632a55205a1461006e578063c9823cc6146100ad575b600080fd5b6100596100543660046101cc565b6100d1565b60405190151581526020015b60405180910390f35b61008161007c366004610215565b610170565b6040805173ffffffffffffffffffffffffffffffffffffffff9093168352602083019190915201610065565b6000546001546100819173ffffffffffffffffffffffffffffffffffffffff169082565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161012457506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b604080518082019091526000805473ffffffffffffffffffffffffffffffffffffffff1680835260015460208401819052919283929091906103e8906101b69087610237565b6101c09190610275565b92509250509250929050565b6000602082840312156101de57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461020e57600080fd5b9392505050565b6000806040838503121561022857600080fd5b50508035926020909101359150565b808202811582820484141761016a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826102ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea2646970667358221220198f2eb85709890164ed282227c53f862658c62d77de9756f5d51ce72a87733e64736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a7146100465780632a55205a1461006e578063c9823cc6146100ad575b600080fd5b6100596100543660046101cc565b6100d1565b60405190151581526020015b60405180910390f35b61008161007c366004610215565b610170565b6040805173ffffffffffffffffffffffffffffffffffffffff9093168352602083019190915201610065565b6000546001546100819173ffffffffffffffffffffffffffffffffffffffff169082565b60007fd5aadfa6000000000000000000000000000000000000000000000000000000007fffffffff0000000000000000000000000000000000000000000000000000000083160161012457506001919050565b7f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b604080518082019091526000805473ffffffffffffffffffffffffffffffffffffffff1680835260015460208401819052919283929091906103e8906101b69087610237565b6101c09190610275565b92509250509250929050565b6000602082840312156101de57600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461020e57600080fd5b9392505050565b6000806040838503121561022857600080fd5b50508035926020909101359150565b808202811582820484141761016a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826102ab577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea2646970667358221220198f2eb85709890164ed282227c53f862658c62d77de9756f5d51ce72a87733e64736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/utils/Address.sol/Address.json b/src/artifacts/contracts/utils/Address.sol/Address.json index e0d7bdc..8021d58 100644 --- a/src/artifacts/contracts/utils/Address.sol/Address.json +++ b/src/artifacts/contracts/utils/Address.sol/Address.json @@ -3,8 +3,8 @@ "contractName": "Address", "sourceName": "contracts/utils/Address.sol", "abi": [], - "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f37585eee0126a7db08af80979f788ace48757c664e8de8368053da65ad6d5e964736f6c63430008120033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220f37585eee0126a7db08af80979f788ace48757c664e8de8368053da65ad6d5e964736f6c63430008120033", + "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220cc99b5a65247cb98cc4bce2f933f8d010a95d7633773d6ac55135fecacb1d65464736f6c63430008120033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220cc99b5a65247cb98cc4bce2f933f8d010a95d7633773d6ac55135fecacb1d65464736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/utils/LibBytes.sol/LibBytes.json b/src/artifacts/contracts/utils/LibBytes.sol/LibBytes.json index 85c00bc..dfb6c7b 100644 --- a/src/artifacts/contracts/utils/LibBytes.sol/LibBytes.json +++ b/src/artifacts/contracts/utils/LibBytes.sol/LibBytes.json @@ -3,8 +3,8 @@ "contractName": "LibBytes", "sourceName": "contracts/utils/LibBytes.sol", "abi": [], - "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220df0c78e5bbca03e0e7c889a23fbbe0e4d1a0b849254b1fb0dc764a6302f51bac64736f6c63430008120033", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220df0c78e5bbca03e0e7c889a23fbbe0e4d1a0b849254b1fb0dc764a6302f51bac64736f6c63430008120033", + "bytecode": "0x60566050600b82828239805160001a6073146043577f4e487b7100000000000000000000000000000000000000000000000000000000600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212209d104f0bc90c2e1d0ec7a815f98e15382957d85a73a9890baa44907cb59e6f1a64736f6c63430008120033", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fdfea26469706673582212209d104f0bc90c2e1d0ec7a815f98e15382957d85a73a9890baa44907cb59e6f1a64736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/utils/LibEIP712.sol/LibEIP712.json b/src/artifacts/contracts/utils/LibEIP712.sol/LibEIP712.json index 71a84a9..2c494f1 100644 --- a/src/artifacts/contracts/utils/LibEIP712.sol/LibEIP712.json +++ b/src/artifacts/contracts/utils/LibEIP712.sol/LibEIP712.json @@ -3,8 +3,8 @@ "contractName": "LibEIP712", "sourceName": "contracts/utils/LibEIP712.sol", "abi": [], - "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea2646970667358221220aff1d58d578a54b8cb0f1e332c7c7c9727f64a25424017a423d4421dddccf70964736f6c63430008120033", - "deployedBytecode": "0x6080604052600080fdfea2646970667358221220aff1d58d578a54b8cb0f1e332c7c7c9727f64a25424017a423d4421dddccf70964736f6c63430008120033", + "bytecode": "0x6080604052348015600f57600080fd5b50603f80601d6000396000f3fe6080604052600080fdfea26469706673582212204d7d5e61e354b13c99e1aa005380f2c6cd8e8e37b4748fe441c8f1d70b41715564736f6c63430008120033", + "deployedBytecode": "0x6080604052600080fdfea26469706673582212204d7d5e61e354b13c99e1aa005380f2c6cd8e8e37b4748fe441c8f1d70b41715564736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/utils/Ownable.sol/Ownable.json b/src/artifacts/contracts/utils/Ownable.sol/Ownable.json index c6067cc..40667dc 100644 --- a/src/artifacts/contracts/utils/Ownable.sol/Ownable.json +++ b/src/artifacts/contracts/utils/Ownable.sol/Ownable.json @@ -54,8 +54,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36102cb806100776000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80638da5cb5b1461003b578063f2fde38b14610067575b600080fd5b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61007a610075366004610258565b61007c565b005b60005473ffffffffffffffffffffffffffffffffffffffff163314610128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81166101cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161011f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561026a57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461028e57600080fd5b939250505056fea2646970667358221220142f6fda398d8c1ffe25daf80e99165e7a65359f86ec34f9a4986d95e7fc73aa64736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80638da5cb5b1461003b578063f2fde38b14610067575b600080fd5b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61007a610075366004610258565b61007c565b005b60005473ffffffffffffffffffffffffffffffffffffffff163314610128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81166101cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161011f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561026a57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461028e57600080fd5b939250505056fea2646970667358221220142f6fda398d8c1ffe25daf80e99165e7a65359f86ec34f9a4986d95e7fc73aa64736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b50600080547fffffffffffffffffffffffff0000000000000000000000000000000000000000163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36102cb806100776000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80638da5cb5b1461003b578063f2fde38b14610067575b600080fd5b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61007a610075366004610258565b61007c565b005b60005473ffffffffffffffffffffffffffffffffffffffff163314610128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81166101cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161011f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561026a57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461028e57600080fd5b939250505056fea2646970667358221220059eb6b8e3dc8ead9ce4177873649a0b82578b2568a75fc10758a4379758e98d64736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80638da5cb5b1461003b578063f2fde38b14610067575b600080fd5b6000546040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b61007a610075366004610258565b61007c565b005b60005473ffffffffffffffffffffffffffffffffffffffff163314610128576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c65236f6e6c794f776e65723a2053454e4445525f49535f4e4f5460448201527f5f4f574e4552000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81166101cb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4f776e61626c65237472616e736665724f776e6572736869703a20494e56414c60448201527f49445f4144445245535300000000000000000000000000000000000000000000606482015260840161011f565b6000805460405173ffffffffffffffffffffffffffffffffffffffff808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60006020828403121561026a57600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461028e57600080fd5b939250505056fea2646970667358221220059eb6b8e3dc8ead9ce4177873649a0b82578b2568a75fc10758a4379758e98d64736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} } diff --git a/src/artifacts/contracts/utils/SignatureValidator.sol/SignatureValidator.json b/src/artifacts/contracts/utils/SignatureValidator.sol/SignatureValidator.json index 9ffccec..48572ff 100644 --- a/src/artifacts/contracts/utils/SignatureValidator.sol/SignatureValidator.json +++ b/src/artifacts/contracts/utils/SignatureValidator.sol/SignatureValidator.json @@ -38,8 +38,8 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b50610daf806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063fa4e12d714610030575b600080fd5b61004361003e366004610b39565b610057565b604051901515815260200160405180910390f35b600080825111610114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff85166101b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e455200000000000000000000000000606482015260840161010b565b60006101c2836108a5565b60f81c905060058110610257576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b60008160ff16600581111561026e5761026e610bd2565b905060008080808085600581111561028857610288610bd2565b03610315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e415455524500000000000000000000606482015260840161010b565b600185600581111561032957610329610bd2565b0361049b5787516061146103bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6103ca8860006109a8565b92506103d78860206109a8565b9150876040815181106103ec576103ec610c01565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa158015610449573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061089d9650505050505050565b60028560058111156104af576104af610bd2565b03610615578751606114610545576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6105508860006109a8565b925061055d8860206109a8565b91508760408151811061057257610572610c01565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001610427565b600385600581111561062957610629610bd2565b03610715576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90610682908c908c90600401610c94565b602060405180830381865afa15801561069f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b600485600581111561072957610729610bd2565b03610815576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90610782908d908c90600401610d0b565b602060405180830381865afa15801561079f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b949350505050565b600080825111610937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f5245515549524544000000000000000000606482015260840161010b565b81600183516109469190610d53565b8151811061095657610956610c01565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b60006109b5826020610d66565b83511015610a45576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f524551554952454400000000606482015260840161010b565b610a50602083610d66565b91508183015190505b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610a9f57600080fd5b813567ffffffffffffffff80821115610aba57610aba610a5f565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715610b0057610b00610a5f565b81604052838152866020858801011115610b1957600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610b4f57600080fd5b843573ffffffffffffffffffffffffffffffffffffffff81168114610b7357600080fd5b935060208501359250604085013567ffffffffffffffff80821115610b9757600080fd5b610ba388838901610a8e565b93506060870135915080821115610bb957600080fd5b50610bc687828801610a8e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b81811015610c5657602081850181015186830182015201610c3a565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b604081526000610ca76040830185610c30565b8281036020840152610cb98185610c30565b95945050505050565b600060208284031215610cd457600080fd5b81517fffffffff0000000000000000000000000000000000000000000000000000000081168114610d0457600080fd5b9392505050565b82815260406020820152600061089d6040830184610c30565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610a5957610a59610d24565b80820180821115610a5957610a59610d2456fea2646970667358221220a455b2e2b2e81ba33e9695422a8189f870b6c585b635e5b39875d139b9e2220c64736f6c63430008120033", - "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063fa4e12d714610030575b600080fd5b61004361003e366004610b39565b610057565b604051901515815260200160405180910390f35b600080825111610114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff85166101b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e455200000000000000000000000000606482015260840161010b565b60006101c2836108a5565b60f81c905060058110610257576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b60008160ff16600581111561026e5761026e610bd2565b905060008080808085600581111561028857610288610bd2565b03610315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e415455524500000000000000000000606482015260840161010b565b600185600581111561032957610329610bd2565b0361049b5787516061146103bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6103ca8860006109a8565b92506103d78860206109a8565b9150876040815181106103ec576103ec610c01565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa158015610449573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061089d9650505050505050565b60028560058111156104af576104af610bd2565b03610615578751606114610545576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6105508860006109a8565b925061055d8860206109a8565b91508760408151811061057257610572610c01565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001610427565b600385600581111561062957610629610bd2565b03610715576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90610682908c908c90600401610c94565b602060405180830381865afa15801561069f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b600485600581111561072957610729610bd2565b03610815576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90610782908d908c90600401610d0b565b602060405180830381865afa15801561079f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b949350505050565b600080825111610937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f5245515549524544000000000000000000606482015260840161010b565b81600183516109469190610d53565b8151811061095657610956610c01565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b60006109b5826020610d66565b83511015610a45576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f524551554952454400000000606482015260840161010b565b610a50602083610d66565b91508183015190505b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610a9f57600080fd5b813567ffffffffffffffff80821115610aba57610aba610a5f565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715610b0057610b00610a5f565b81604052838152866020858801011115610b1957600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610b4f57600080fd5b843573ffffffffffffffffffffffffffffffffffffffff81168114610b7357600080fd5b935060208501359250604085013567ffffffffffffffff80821115610b9757600080fd5b610ba388838901610a8e565b93506060870135915080821115610bb957600080fd5b50610bc687828801610a8e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b81811015610c5657602081850181015186830182015201610c3a565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b604081526000610ca76040830185610c30565b8281036020840152610cb98185610c30565b95945050505050565b600060208284031215610cd457600080fd5b81517fffffffff0000000000000000000000000000000000000000000000000000000081168114610d0457600080fd5b9392505050565b82815260406020820152600061089d6040830184610c30565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610a5957610a59610d24565b80820180821115610a5957610a59610d2456fea2646970667358221220a455b2e2b2e81ba33e9695422a8189f870b6c585b635e5b39875d139b9e2220c64736f6c63430008120033", + "bytecode": "0x608060405234801561001057600080fd5b50610daf806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063fa4e12d714610030575b600080fd5b61004361003e366004610b39565b610057565b604051901515815260200160405180910390f35b600080825111610114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff85166101b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e455200000000000000000000000000606482015260840161010b565b60006101c2836108a5565b60f81c905060058110610257576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b60008160ff16600581111561026e5761026e610bd2565b905060008080808085600581111561028857610288610bd2565b03610315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e415455524500000000000000000000606482015260840161010b565b600185600581111561032957610329610bd2565b0361049b5787516061146103bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6103ca8860006109a8565b92506103d78860206109a8565b9150876040815181106103ec576103ec610c01565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa158015610449573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061089d9650505050505050565b60028560058111156104af576104af610bd2565b03610615578751606114610545576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6105508860006109a8565b925061055d8860206109a8565b91508760408151811061057257610572610c01565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001610427565b600385600581111561062957610629610bd2565b03610715576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90610682908c908c90600401610c94565b602060405180830381865afa15801561069f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b600485600581111561072957610729610bd2565b03610815576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90610782908d908c90600401610d0b565b602060405180830381865afa15801561079f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b949350505050565b600080825111610937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f5245515549524544000000000000000000606482015260840161010b565b81600183516109469190610d53565b8151811061095657610956610c01565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b60006109b5826020610d66565b83511015610a45576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f524551554952454400000000606482015260840161010b565b610a50602083610d66565b91508183015190505b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610a9f57600080fd5b813567ffffffffffffffff80821115610aba57610aba610a5f565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715610b0057610b00610a5f565b81604052838152866020858801011115610b1957600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610b4f57600080fd5b843573ffffffffffffffffffffffffffffffffffffffff81168114610b7357600080fd5b935060208501359250604085013567ffffffffffffffff80821115610b9757600080fd5b610ba388838901610a8e565b93506060870135915080821115610bb957600080fd5b50610bc687828801610a8e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b81811015610c5657602081850181015186830182015201610c3a565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b604081526000610ca76040830185610c30565b8281036020840152610cb98185610c30565b95945050505050565b600060208284031215610cd457600080fd5b81517fffffffff0000000000000000000000000000000000000000000000000000000081168114610d0457600080fd5b9392505050565b82815260406020820152600061089d6040830184610c30565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610a5957610a59610d24565b80820180821115610a5957610a59610d2456fea2646970667358221220cfa16dba9e200d86917fa30f1b886bb6af2b28d3b43f6e536270ad2128348cdc64736f6c63430008120033", + "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063fa4e12d714610030575b600080fd5b61004361003e366004610b39565b610057565b604051901515815260200160405180910390f35b600080825111610114576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f475245415445525f5448414e5f305f524551554960648201527f5245440000000000000000000000000000000000000000000000000000000000608482015260a4015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff85166101b7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603360248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494e56414c49445f5349474e455200000000000000000000000000606482015260840161010b565b60006101c2836108a5565b60f81c905060058110610257576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b60008160ff16600581111561026e5761026e610bd2565b905060008080808085600581111561028857610288610bd2565b03610315576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603660248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20494c4c4547414c5f5349474e415455524500000000000000000000606482015260840161010b565b600185600581111561032957610329610bd2565b0361049b5787516061146103bf576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6103ca8860006109a8565b92506103d78860206109a8565b9150876040815181106103ec576103ec610c01565b0160209081015160408051600081529283018082528d905260f89190911c9082018190526060820185905260808201849052945060019060a0015b6020604051602081039080840390855afa158015610449573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015173ffffffffffffffffffffffffffffffffffffffff8d8116911614975061089d9650505050505050565b60028560058111156104af576104af610bd2565b03610615578751606114610545576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a204c454e4754485f39375f5245515549524544000000000000000000606482015260840161010b565b6105508860006109a8565b925061055d8860206109a8565b91508760408151811061057257610572610c01565b016020908101516040517f19457468657265756d205369676e6564204d6573736167653a0a33320000000092810192909252603c82018c905260f81c9450600190605c01604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600084529083018083525260ff871690820152606081018590526080810184905260a001610427565b600385600581111561062957610629610bd2565b03610715576040517f20c13b0b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c16906320c13b0b90610682908c908c90600401610c94565b602060405180830381865afa15801561069f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f20c13b0b0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b600485600581111561072957610729610bd2565b03610815576040517f1626ba7e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c1690631626ba7e90610782908d908c90600401610d0b565b602060405180830381865afa15801561079f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c39190610cc2565b7fffffffff00000000000000000000000000000000000000000000000000000000167f1626ba7e0000000000000000000000000000000000000000000000000000000014965061089d95505050505050565b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603a60248201527f5369676e617475726556616c696461746f7223697356616c69645369676e617460448201527f7572653a20554e535550504f525445445f5349474e4154555245000000000000606482015260840161010b565b949350505050565b600080825111610937576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603760248201527f4c6962427974657323706f704c617374427974653a20475245415445525f544860448201527f414e5f5a45524f5f4c454e4754485f5245515549524544000000000000000000606482015260840161010b565b81600183516109469190610d53565b8151811061095657610956610c01565b016020015182517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01909252507fff000000000000000000000000000000000000000000000000000000000000001690565b60006109b5826020610d66565b83511015610a45576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603c60248201527f4c696242797465732372656164427974657333323a20475245415445525f4f5260448201527f5f455155414c5f544f5f33325f4c454e4754485f524551554952454400000000606482015260840161010b565b610a50602083610d66565b91508183015190505b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f830112610a9f57600080fd5b813567ffffffffffffffff80821115610aba57610aba610a5f565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715610b0057610b00610a5f565b81604052838152866020858801011115610b1957600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215610b4f57600080fd5b843573ffffffffffffffffffffffffffffffffffffffff81168114610b7357600080fd5b935060208501359250604085013567ffffffffffffffff80821115610b9757600080fd5b610ba388838901610a8e565b93506060870135915080821115610bb957600080fd5b50610bc687828801610a8e565b91505092959194509250565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000815180845260005b81811015610c5657602081850181015186830182015201610c3a565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b604081526000610ca76040830185610c30565b8281036020840152610cb98185610c30565b95945050505050565b600060208284031215610cd457600080fd5b81517fffffffff0000000000000000000000000000000000000000000000000000000081168114610d0457600080fd5b9392505050565b82815260406020820152600061089d6040830184610c30565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b81810381811115610a5957610a59610d24565b80820180821115610a5957610a59610d2456fea2646970667358221220cfa16dba9e200d86917fa30f1b886bb6af2b28d3b43f6e536270ad2128348cdc64736f6c63430008120033", "linkReferences": {}, "deployedLinkReferences": {} }