Hierarchy

  • ContractFactory
    • AgreementMock__factory

Constructors

  • Parameters

    • Rest ...args: AgreementMockConstructorParams

    Returns AgreementMock__factory

Properties

abi: readonly [{
    inputs: readonly [{
        internalType: "address";
        name: "host";
        type: "address";
    }, {
        internalType: "bytes32";
        name: "t";
        type: "bytes32";
    }, {
        internalType: "uint256";
        name: "v";
        type: "uint256";
    }];
    stateMutability: "nonpayable";
    type: "constructor";
}, {
    inputs: readonly [];
    name: "AGREEMENT_BASE_ONLY_HOST";
    type: "error";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "uint8";
        name: "appLevel";
        type: "uint8";
    }, {
        indexed: false;
        internalType: "uint8";
        name: "callType";
        type: "uint8";
    }, {
        indexed: false;
        internalType: "bytes4";
        name: "agreementSelector";
        type: "bytes4";
    }];
    name: "AppAfterCallbackResult";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "uint8";
        name: "appLevel";
        type: "uint8";
    }, {
        indexed: false;
        internalType: "uint8";
        name: "callType";
        type: "uint8";
    }, {
        indexed: false;
        internalType: "bytes4";
        name: "agreementSelector";
        type: "bytes4";
    }, {
        indexed: false;
        internalType: "bytes";
        name: "cbdata";
        type: "bytes";
    }];
    name: "AppBeforeCallbackResult";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "bytes32";
        name: "uuid";
        type: "bytes32";
    }, {
        indexed: false;
        internalType: "address";
        name: "codeAddress";
        type: "address";
    }];
    name: "CodeUpdated";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "uint8";
        name: "version";
        type: "uint8";
    }];
    name: "Initialized";
    type: "event";
}, {
    anonymous: false;
    inputs: readonly [{
        indexed: false;
        internalType: "uint256";
        name: "ping";
        type: "uint256";
    }];
    name: "Pong";
    type: "event";
}, {
    inputs: readonly [];
    name: "agreementType";
    outputs: readonly [{
        internalType: "bytes32";
        name: "";
        type: "bytes32";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperApp";
        name: "app";
        type: "address";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "callAppAfterAgreementCreatedCallback";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperApp";
        name: "app";
        type: "address";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "callAppAfterAgreementTerminatedCallback";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperApp";
        name: "app";
        type: "address";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "callAppAfterAgreementUpdatedCallback";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperApp";
        name: "app";
        type: "address";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "callAppBeforeAgreementCreatedCallback";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperApp";
        name: "app";
        type: "address";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "callAppBeforeAgreementTerminatedCallback";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperApp";
        name: "app";
        type: "address";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "callAppBeforeAgreementUpdatedCallback";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [];
    name: "castrate";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluidToken";
        name: "token";
        type: "address";
    }, {
        internalType: "bytes32";
        name: "id";
        type: "bytes32";
    }, {
        internalType: "bytes32[]";
        name: "data";
        type: "bytes32[]";
    }];
    name: "createAgreementFor";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "string";
        name: "reason";
        type: "string";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "doRevert";
    outputs: readonly [];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [];
    name: "getCodeAddress";
    outputs: readonly [{
        internalType: "address";
        name: "codeAddress";
        type: "address";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluidToken";
        name: "token";
        type: "address";
    }, {
        internalType: "bytes32";
        name: "id";
        type: "bytes32";
    }, {
        internalType: "bool";
        name: "useDefaultRewardAccount";
        type: "bool";
    }, {
        internalType: "address";
        name: "liquidator";
        type: "address";
    }, {
        internalType: "address";
        name: "targetAccount";
        type: "address";
    }, {
        internalType: "uint256";
        name: "rewardAmount";
        type: "uint256";
    }, {
        internalType: "int256";
        name: "targetAccountBalanceDelta";
        type: "int256";
    }];
    name: "makeLiquidationPayoutsFor";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "expectedMsgSender";
        type: "address";
    }, {
        internalType: "uint256";
        name: "ping";
        type: "uint256";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "pingMe";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [];
    name: "proxiableUUID";
    outputs: readonly [{
        internalType: "bytes32";
        name: "";
        type: "bytes32";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluidToken";
        name: "token";
        type: "address";
    }, {
        internalType: "address";
        name: "account";
        type: "address";
    }, {
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    name: "realtimeBalanceOf";
    outputs: readonly [{
        internalType: "int256";
        name: "dynamicBalance";
        type: "int256";
    }, {
        internalType: "uint256";
        name: "deposit";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "owedDeposit";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluidToken";
        name: "token";
        type: "address";
    }, {
        internalType: "address";
        name: "account";
        type: "address";
    }, {
        internalType: "int256";
        name: "dynamicBalance";
        type: "int256";
    }, {
        internalType: "uint256";
        name: "deposit";
        type: "uint256";
    }, {
        internalType: "uint256";
        name: "owedDeposit";
        type: "uint256";
    }];
    name: "setRealtimeBalanceFor";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluidToken";
        name: "token";
        type: "address";
    }, {
        internalType: "address";
        name: "account";
        type: "address";
    }, {
        internalType: "int256";
        name: "delta";
        type: "int256";
    }];
    name: "settleBalanceFor";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluidToken";
        name: "token";
        type: "address";
    }, {
        internalType: "bytes32";
        name: "id";
        type: "bytes32";
    }, {
        internalType: "uint256";
        name: "dataLength";
        type: "uint256";
    }];
    name: "terminateAgreementFor";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "tryAppCallbackPop";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperApp";
        name: "appMock";
        type: "address";
    }, {
        internalType: "bool";
        name: "hackCtx";
        type: "bool";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "tryAppCallbackPush";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperApp";
        name: "appMock";
        type: "address";
    }, {
        internalType: "bool";
        name: "hackCtx";
        type: "bool";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "tryCallAppAfterCallback";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperApp";
        name: "appMock";
        type: "address";
    }, {
        internalType: "bool";
        name: "hackCtx";
        type: "bool";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "tryCallAppBeforeCallback";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "bool";
        name: "hackCtx";
        type: "bool";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "tryCtxUseCredit";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluid";
        name: "host";
        type: "address";
    }, {
        internalType: "contract ISuperApp";
        name: "appMock";
        type: "address";
    }, {
        internalType: "bool";
        name: "hackCtx";
        type: "bool";
    }, {
        internalType: "bytes";
        name: "ctx";
        type: "bytes";
    }];
    name: "tryJailApp";
    outputs: readonly [{
        internalType: "bytes";
        name: "newCtx";
        type: "bytes";
    }];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluidToken";
        name: "token";
        type: "address";
    }, {
        internalType: "bytes32";
        name: "id";
        type: "bytes32";
    }, {
        internalType: "bytes32[]";
        name: "data";
        type: "bytes32[]";
    }];
    name: "updateAgreementDataFor";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "contract ISuperfluidToken";
        name: "token";
        type: "address";
    }, {
        internalType: "address";
        name: "account";
        type: "address";
    }, {
        internalType: "uint256";
        name: "slotId";
        type: "uint256";
    }, {
        internalType: "bytes32[]";
        name: "slotData";
        type: "bytes32[]";
    }];
    name: "updateAgreementStateSlotFor";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [{
        internalType: "address";
        name: "newAddress";
        type: "address";
    }];
    name: "updateCode";
    outputs: readonly [];
    stateMutability: "nonpayable";
    type: "function";
}, {
    inputs: readonly [];
    name: "version";
    outputs: readonly [{
        internalType: "uint256";
        name: "";
        type: "uint256";
    }];
    stateMutability: "view";
    type: "function";
}]
bytecode: "0x60e06040523480156200001157600080fd5b5060405162002fed38038062002fed83398101604081905262000034916200004e565b6001600160a01b0390921660805260a05260c05262000093565b6000806000606084860312156200006457600080fd5b83516001600160a01b03811681146200007c57600080fd5b602085015160409095015190969495509392505050565b60805160a05160c051612f2a620000c3600039600061028b015260006102ea015260006106470152612f2a6000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c806383e68452116100f9578063c3598c4a11610097578063d227a99311610071578063d227a993146103ef578063d8f72cf914610402578063edf02c4e14610415578063f602dc5c1461042857600080fd5b8063c3598c4a146103b6578063c4ab263b146103c9578063ca519d17146103dc57600080fd5b80639903ad38116100d35780639903ad381461035a5780639b2e48bc146103625780639d69476f14610390578063c1b7dde5146103a357600080fd5b806383e68452146103215780638e6b27491461033457806396ac5e9d1461034757600080fd5b806354658873116101665780636e3bfc5e116101405780636e3bfc5e146102c257806371272f8c146102d55780637730599e146102e85780637c0af83b1461030e57600080fd5b8063546588731461027657806354fd4d5014610289578063667fc9ad146102af57600080fd5b806346951954116101a2578063469519541461021a5780634b4649dd1461022d57806350d75d251461024057806352d1902d1461026057600080fd5b80631a8721e9146101c95780633c012f4d146101f2578063430fce1e14610207575b600080fd5b6101dc6101d7366004612358565b61043b565b6040516101e9919061240c565b60405180910390f35b61020561020036600461241f565b61050c565b005b6102056102153660046124dd565b6105d4565b61020561022836600461252c565b61063c565b61020561023b3660046124dd565b610691565b6102486106c1565b6040516001600160a01b0390911681526020016101e9565b6102686106f0565b6040519081526020016101e9565b6101dc610284366004612549565b610754565b7f0000000000000000000000000000000000000000000000000000000000000000610268565b6102056102bd36600461259d565b610826565b6102056102d03660046125de565b61088e565b6101dc6102e3366004612650565b6108f9565b7f0000000000000000000000000000000000000000000000000000000000000000610268565b6101dc61031c366004612549565b610a32565b61020561032f3660046126ba565b610b3b565b6101dc6103423660046126ef565b610b6f565b6101dc610355366004612650565b610d30565b610205610d7e565b61037561037036600461259d565b610e87565b604080519384526020840192909252908201526060016101e9565b6101dc61039e366004612650565b610f89565b6101dc6103b1366004612650565b611011565b6101dc6103c4366004612549565b611094565b6101dc6103d7366004612549565b61115d565b6102056103ea366004612732565b611226565b6101dc6103fd366004612549565b61131f565b6101dc610410366004612549565b6113e8565b610205610423366004612783565b61146b565b6101dc610436366004612549565b61153d565b6060846001600160a01b03166359a291418561048d5784848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061049d92505050565b6040805160008152602081019091525b60006040518363ffffffff1660e01b81526004016104bc9291906127f8565b6000604051808303816000875af11580156104db573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261050391908101906128d6565b95945050505050565b60008561053a576040805160016020820152600281830152815180820383018152606090910190915261055d565b604080516001602082015260008183015281518082038301815260609091019091525b604051631863e80960e01b81529091506001600160a01b03891690631863e80990610598908a9085908a908c908b908b908b9060040161290a565b600060405180830381600087803b1580156105b257600080fd5b505af11580156105c6573d6000803e3d6000fd5b505050505050505050505050565b604051630254d47f60e31b81526001600160a01b038516906312a6a3f89061060490869086908690600401612989565b600060405180830381600087803b15801561061e57600080fd5b505af1158015610632573d6000803e3d6000fd5b5050505050505050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461068557604051630b00ec8f60e11b815260040160405180910390fd5b61068e81611606565b50565b60405163a1b2bf8b60e01b81526001600160a01b0385169063a1b2bf8b9061060490869086908690600401612989565b60006106eb7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905090565b6000306001600160a01b0316637730599e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610730573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106eb91906129a3565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf42873491506107af90849060040161240c565b602060405180830381865afa1580156107cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f091906129bc565b6108155760405162461bcd60e51b815260040161080c906129d9565b60405180910390fd5b61050385640200000000868661180e565b60405163cf97256d60e01b81526001600160a01b0383811660048301526024820183905284169063cf97256d906044015b600060405180830381600087803b15801561087157600080fd5b505af1158015610885573d6000803e3d6000fd5b50505050505050565b60405163048620af60e11b81526001600160a01b0386169063090c415e906108c0908790879087908790600401612a25565b600060405180830381600087803b1580156108da57600080fd5b505af11580156108ee573d6000803e3d6000fd5b505050505050505050565b604080516000808252602082018181528284019093526060926001600160a01b03898116936374041e02938a93928416926330d9c9159261094292913091839160648201612a4d565b604051602081830303815290604052915060e01b6020820180516001600160e01b0383818316178352505050506001886109b25787878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506109c292505050565b6040805160008152602081019091525b6040518563ffffffff1660e01b81526004016109e19493929190612a9e565b6000604051808303816000875af1158015610a00573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a2891908101906128d6565b9695505050505050565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf4287349150610a8d90849060040161240c565b602060405180830381865afa158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace91906129bc565b610aea5760405162461bcd60e51b815260040161080c906129d9565b610afb856401000000008686611b1e565b83838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509298975050505050505050565b604051632704839760e01b815260048101839052602481018290526001600160a01b03841690632704839790604401610857565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf4287349150610bca90849060040161240c565b602060405180830381865afa158015610be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0b91906129bc565b610c275760405162461bcd60e51b815260040161080c906129d9565b604051631fb6491d60e11b81526000903390633f6c923a90610c4f9088908890600401612b10565b600060405180830381865afa158015610c6c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610c949190810190612b58565b9050866001600160a01b031681606001516001600160a01b031614610cbb57610cbb612c5e565b6040518681527f58b69f57828e6962d216502094c54f6562f3bf082ba758966c3454f9e37b15259060200160405180910390a184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929a9950505050505050505050565b6040805160008082526020820181815282840182815260608085019095526001600160a01b038a811694631e6d0a84948b949285169363d86ed3e59361094293309284929060848301612c74565b600054610100900460ff1615808015610d9e5750600054600160ff909116105b80610db85750303b158015610db8575060005460ff166001145b610e1b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161080c565b6000805460ff191660011790558015610e3e576000805461ff0019166101001790555b801561068e576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a150565b604051634b61cc3360e01b81523060048201526001600160a01b0383811660248301526303e83e99604483015260036064830152600091829182918291881690634b61cc3390608401600060405180830381865afa158015610eed573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610f159190810190612cda565b9050610f3d81600081518110610f2d57610f2d612d73565b602002602001015160001c611c50565b81600181518110610f5057610f50612d73565b602002602001015160001c82600281518110610f6e57610f6e612d73565b602002602001015160001c9350935093505093509350939050565b6060856001600160a01b031663768fabb085610fdb5784848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610feb92505050565b6040805160008152602081019091525b8760008060006040518663ffffffff1660e01b81526004016109e1959493929190612d89565b6060856001600160a01b031663b724211e856110635784848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061107392505050565b6040805160008152602081019091525b8760006040518463ffffffff1660e01b81526004016109e193929190612dce565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf42873491506110ef90849060040161240c565b602060405180830381865afa15801561110c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061113091906129bc565b61114c5760405162461bcd60e51b815260040161080c906129d9565b610afb856410000000008686611b1e565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf42873491506111b890849060040161240c565b602060405180830381865afa1580156111d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f991906129bc565b6112155760405162461bcd60e51b815260040161080c906129d9565b61050385640800000000868661180e565b60408051600380825260808201909252600091602082016060803683370190505090508360001b8160008151811061126057611260612d73565b6020026020010181815250508260001b8160018151811061128357611283612d73565b6020026020010181815250508160001b816002815181106112a6576112a6612d73565b602090810291909101015260405163048620af60e11b81526001600160a01b0387169063090c415e906112e59088906303e83e99908690600401612dfc565b600060405180830381600087803b1580156112ff57600080fd5b505af1158015611313573d6000803e3d6000fd5b50505050505050505050565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf428734915061137a90849060040161240c565b602060405180830381865afa158015611397573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113bb91906129bc565b6113d75760405162461bcd60e51b815260040161080c906129d9565b610afb856404000000008686611b1e565b604051634c4d861f60e11b81526060906001600160a01b0385169063989b0c3e9061141c9086908690600090600401612e59565b6000604051808303816000875af115801561143b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261146391908101906128d6565b949350505050565b81818080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf42873491506114c490849060040161240c565b602060405180830381865afa1580156114e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061150591906129bc565b6115215760405162461bcd60e51b815260040161080c906129d9565b848460405162461bcd60e51b815260040161080c929190612b10565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf428734915061159890849060040161240c565b602060405180830381865afa1580156115b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115d991906129bc565b6115f55760405162461bcd60e51b815260040161080c906129d9565b61050385642000000000868661180e565b60006116307f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b0316036116865760405162461bcd60e51b815260206004820152601d60248201527f5555505350726f786961626c653a206e6f742075706772616461626c65000000604482015260640161080c565b806001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e891906129a3565b6116f06106f0565b146117495760405162461bcd60e51b815260206004820152602360248201527f5555505350726f786961626c653a206e6f7420636f6d70617469626c65206c6f60448201526267696360e81b606482015260840161080c565b6001600160a01b03811630036117a15760405162461bcd60e51b815260206004820152601960248201527f5555505350726f786961626c653a2070726f7879206c6f6f7000000000000000604482015260640161080c565b6117c9817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b7fe011bc04c286c344a8fcbb8de77f953da762c3e25d8cdea984147fc4168a5dcc6117f26106f0565b604080519182526001600160a01b038416602083015201610e7c565b604051636b4f333560e01b81526001600160a01b03851660048201526060906000903390636b4f333590602401602060405180830381865afa158015611858573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061187c91906129bc565b604051631fb6491d60e11b81529091506000903390633f6c923a906118a79088908890600401612b10565b600060405180830381865afa1580156118c4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118ec9190810190612b58565b9050600061190f6000896000801b60405180602001604052806000815250611cbe565b60c081018890529050611920612292565b611970826040518060200160405280600081525089898080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d0292505050565b9550905083156119f057602081015160ff16156119eb5760405162461bcd60e51b815260206004820152603360248201527f41677265656d656e744d6f636b3a2063616c6c6261636b2073686f756c64206e60448201527206f74207265616368206a61696c65642061707606c1b606482015260840161080c565b611ab4565b604051632fd0a1cd60e21b8152339063bf42873490611a1390889060040161240c565b602060405180830381865afa158015611a30573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a5491906129bc565b611ab45760405162461bcd60e51b815260206004820152602b60248201527f41677265656d656e744d6f636b3a20637478206e6f742076616c69642061667460448201526a65722063616c6c6261636b60a81b606482015260840161080c565b825160208085015160808601516040805160ff958616815294909216928401929092526001600160e01b031990911682820152517fbebfa520000ac6154adc3325e12aab81b1e37b21a779c68db565a7db91de76949181900360600190a150505050949350505050565b604051631fb6491d60e11b81526000903390633f6c923a90611b469086908690600401612b10565b600060405180830381865afa158015611b63573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611b8b9190810190612b58565b90506000611bae6000876000801b60405180602001604052806000815250611cbe565b9050848160c00181815250506000611bfc8286868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611f4e92505050565b90507f8d9bcf46f17f82759c79ab71d4382eb5a73791d05b176ea38f61b4c6d7315fe383600001518460200151856080015184604051611c3f9493929190612e7d565b60405180910390a150505050505050565b60006001600160ff1b03821115611cba5760405162461bcd60e51b815260206004820152602860248201527f53616665436173743a2076616c756520646f65736e27742066697420696e2061604482015267371034b73a191a9b60c11b606482015260840161080c565b5090565b6040805160e08101825260006080820181905260a0820181905260c08201526001600160a01b03958616815293909416602084015292820152606081019190915290565b611d0a612292565b6020840151604051633e7d48bd60e21b81526001600160a01b03909116600482015260609060009081908190339063f9f522f490602401606060405180830381865afa158015611d5e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d829190612eb1565b88965091945092509050828015611d97575081155b15611f4357611da68489612105565b93508760c001518116600003611f31576000611dc58960c0015161218a565b89516040808c015160608d015182516000815260208101909352611df39392309291908e9060448101612c74565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417909352918b015160c08c0151925163079b42a160e21b81529193503392631e6d0a8492611e629291869164200000000091909114908b90600401612a9e565b6000604051808303816000875af1158015611e81573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ea991908101906128d6565b604051631fb6491d60e11b81529095503390633f6c923a90611ecf90889060040161240c565b600060405180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611f149190810190612b58565b9550611f298960800151876101000151612221565b610100870152505b611f408686610100015161223f565b93505b505050935093915050565b6020820151604051633e7d48bd60e21b81526001600160a01b03909116600482015260609060009081908190339063f9f522f490602401606060405180830381865afa158015611fa2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fc69190612eb1565b91945092509050828015611fd8575081155b156120fc576000611fe98688612105565b90508660c0015182166000036120ee5760006120088860c0015161218a565b88516040808b015160608c01518251600081526020810190935261203493923092919060448101612a4d565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417909352918a015160c08b01519251633a020f0160e11b815291935033926374041e02926120a39291869164100000000091909114908890600401612a9e565b6000604051808303816000875af11580156120c2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120ea91908101906128d6565b9550505b6120f986600061223f565b50505b50505092915050565b6020810151608082015160a08301518351604051630768fabb60e41b8152606094339463768fabb09461213c948a94600401612d89565b6000604051808303816000875af115801561215b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261218391908101906128d6565b9392505050565b600064010000000082036121a657506330d9c91560e01b919050565b64040000000082036121c05750630221347d60e61b919050565b64100000000082036121da5750635f9e7d7760e01b919050565b64020000000082036121f4575063d86ed3e560e01b919050565b640800000000820361220e575063230dbd2960e01b919050565b506353c11f9960e01b919050565b919050565b6000612183600061223a61223486611c50565b85612267565b61227c565b604051634c4d861f60e11b8152606090339063989b0c3e9061213c90869086906004016127f8565b60008183136122765782612183565b50919050565b600081831361228b5781612183565b5090919050565b604080516101608101825260008082526020820181905291810182905260608082018390526080820183905260a082015260c0810182905260e081018290526101008101829052610120810182905261014081019190915290565b6001600160a01b038116811461068e57600080fd5b801515811461068e57600080fd5b60008083601f84011261232257600080fd5b5081356001600160401b0381111561233957600080fd5b60208301915083602082850101111561235157600080fd5b9250929050565b6000806000806060858703121561236e57600080fd5b8435612379816122ed565b9350602085013561238981612302565b925060408501356001600160401b038111156123a457600080fd5b6123b087828801612310565b95989497509550505050565b60005b838110156123d75781810151838201526020016123bf565b50506000910152565b600081518084526123f88160208601602086016123bc565b601f01601f19169290920160200192915050565b60208152600061218360208301846123e0565b600080600080600080600060e0888a03121561243a57600080fd5b8735612445816122ed565b965060208801359550604088013561245c81612302565b9450606088013561246c816122ed565b9350608088013561247c816122ed565b9699959850939692959460a0840135945060c09093013592915050565b60008083601f8401126124ab57600080fd5b5081356001600160401b038111156124c257600080fd5b6020830191508360208260051b850101111561235157600080fd5b600080600080606085870312156124f357600080fd5b84356124fe816122ed565b93506020850135925060408501356001600160401b0381111561252057600080fd5b6123b087828801612499565b60006020828403121561253e57600080fd5b8135612183816122ed565b60008060006040848603121561255e57600080fd5b8335612569816122ed565b925060208401356001600160401b0381111561258457600080fd5b61259086828701612310565b9497909650939450505050565b6000806000606084860312156125b257600080fd5b83356125bd816122ed565b925060208401356125cd816122ed565b929592945050506040919091013590565b6000806000806000608086880312156125f657600080fd5b8535612601816122ed565b94506020860135612611816122ed565b93506040860135925060608601356001600160401b0381111561263357600080fd5b61263f88828901612499565b969995985093965092949392505050565b60008060008060006080868803121561266857600080fd5b8535612673816122ed565b94506020860135612683816122ed565b9350604086013561269381612302565b925060608601356001600160401b038111156126ae57600080fd5b61263f88828901612310565b6000806000606084860312156126cf57600080fd5b83356126da816122ed565b95602085013595506040909401359392505050565b6000806000806060858703121561270557600080fd5b8435612710816122ed565b93506020850135925060408501356001600160401b038111156123a457600080fd5b600080600080600060a0868803121561274a57600080fd5b8535612755816122ed565b94506020860135612765816122ed565b94979496505050506040830135926060810135926080909101359150565b6000806000806040858703121561279957600080fd5b84356001600160401b03808211156127b057600080fd5b6127bc88838901612310565b909650945060208701359150808211156127d557600080fd5b506123b087828801612310565b634e487b7160e01b600052604160045260246000fd5b60408152600061280b60408301856123e0565b90508260208301529392505050565b60405161016081016001600160401b038111828210171561283d5761283d6127e2565b60405290565b604051601f8201601f191681016001600160401b038111828210171561286b5761286b6127e2565b604052919050565b600082601f83011261288457600080fd5b81516001600160401b0381111561289d5761289d6127e2565b6128b0601f8201601f1916602001612843565b8181528460208386010111156128c557600080fd5b6114638260208301602087016123bc565b6000602082840312156128e857600080fd5b81516001600160401b038111156128fe57600080fd5b61146384828501612873565b87815260e06020820152600061292360e08301896123e0565b6001600160a01b03978816604084015295151560608301525092909416608083015260a082015260c0019190915292915050565b81835260006001600160fb1b0383111561297057600080fd5b8260051b80836020870137939093016020019392505050565b838152604060208201526000610503604083018486612957565b6000602082840312156129b557600080fd5b5051919050565b6000602082840312156129ce57600080fd5b815161218381612302565b6020808252602c908201527f41677265656d656e744d6f636b3a20637478206e6f742076616c69642067697660408201526b656e20627920686f73743f2160a01b606082015260800190565b60018060a01b0385168152836020820152606060408201526000610a28606083018486612957565b6001600160a01b038681168252851660208201526040810184905260a060608201819052600090612a80908301856123e0565b8281036080840152612a9281856123e0565b98975050505050505050565b6001600160a01b0385168152608060208201819052600090612ac2908301866123e0565b84151560408401528281036060840152612adc81856123e0565b979650505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000611463602083018486612ae7565b805160ff8116811461221c57600080fd5b805161221c816122ed565b80516001600160e01b03198116811461221c57600080fd5b600060208284031215612b6a57600080fd5b81516001600160401b0380821115612b8157600080fd5b908301906101608286031215612b9657600080fd5b612b9e61281a565b612ba783612b24565b8152612bb560208401612b24565b602082015260408301516040820152612bd060608401612b35565b6060820152612be160808401612b40565b608082015260a083015182811115612bf857600080fd5b612c0487828601612873565b60a08301525060c083015160c082015260e083015160e0820152610100915081830151828201526101209150612c3b828401612b35565b828201526101409150612c4f828401612b35565b91810191909152949350505050565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b038781168252861660208201526040810185905260c060608201819052600090612ca7908301866123e0565b8281036080840152612cb981866123e0565b905082810360a0840152612ccd81856123e0565b9998505050505050505050565b60006020808385031215612ced57600080fd5b82516001600160401b0380821115612d0457600080fd5b818501915085601f830112612d1857600080fd5b815181811115612d2a57612d2a6127e2565b8060051b9150612d3b848301612843565b8181529183018401918481019088841115612d5557600080fd5b938501935b83851015612a9257845182529385019390850190612d5a565b634e487b7160e01b600052603260045260246000fd5b60a081526000612d9c60a08301886123e0565b6001600160a01b0396871660208401526040830195909552506060810192909252909216608090920191909152919050565b606081526000612de160608301866123e0565b6001600160a01b039490941660208301525060400152919050565b6001600160a01b038416815260208082018490526060604083018190528351908301819052600091848101916080850190845b81811015612e4b57845183529383019391830191600101612e2f565b509098975050505050505050565b604081526000612e6d604083018587612ae7565b9050826020830152949350505050565b60ff8516815260ff8416602082015263ffffffff60e01b83166040820152608060608201526000610a2860808301846123e0565b600080600060608486031215612ec657600080fd5b8351612ed181612302565b6020850151909350612ee281612302565b8092505060408401519050925092509256fea2646970667358221220820eeef030716eb7f586c244aaf358b429f8d4d5928f75a4854d7b235c88d89064736f6c63430008170033" = "0x60e06040523480156200001157600080fd5b5060405162002fed38038062002fed83398101604081905262000034916200004e565b6001600160a01b0390921660805260a05260c05262000093565b6000806000606084860312156200006457600080fd5b83516001600160a01b03811681146200007c57600080fd5b602085015160409095015190969495509392505050565b60805160a05160c051612f2a620000c3600039600061028b015260006102ea015260006106470152612f2a6000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c806383e68452116100f9578063c3598c4a11610097578063d227a99311610071578063d227a993146103ef578063d8f72cf914610402578063edf02c4e14610415578063f602dc5c1461042857600080fd5b8063c3598c4a146103b6578063c4ab263b146103c9578063ca519d17146103dc57600080fd5b80639903ad38116100d35780639903ad381461035a5780639b2e48bc146103625780639d69476f14610390578063c1b7dde5146103a357600080fd5b806383e68452146103215780638e6b27491461033457806396ac5e9d1461034757600080fd5b806354658873116101665780636e3bfc5e116101405780636e3bfc5e146102c257806371272f8c146102d55780637730599e146102e85780637c0af83b1461030e57600080fd5b8063546588731461027657806354fd4d5014610289578063667fc9ad146102af57600080fd5b806346951954116101a2578063469519541461021a5780634b4649dd1461022d57806350d75d251461024057806352d1902d1461026057600080fd5b80631a8721e9146101c95780633c012f4d146101f2578063430fce1e14610207575b600080fd5b6101dc6101d7366004612358565b61043b565b6040516101e9919061240c565b60405180910390f35b61020561020036600461241f565b61050c565b005b6102056102153660046124dd565b6105d4565b61020561022836600461252c565b61063c565b61020561023b3660046124dd565b610691565b6102486106c1565b6040516001600160a01b0390911681526020016101e9565b6102686106f0565b6040519081526020016101e9565b6101dc610284366004612549565b610754565b7f0000000000000000000000000000000000000000000000000000000000000000610268565b6102056102bd36600461259d565b610826565b6102056102d03660046125de565b61088e565b6101dc6102e3366004612650565b6108f9565b7f0000000000000000000000000000000000000000000000000000000000000000610268565b6101dc61031c366004612549565b610a32565b61020561032f3660046126ba565b610b3b565b6101dc6103423660046126ef565b610b6f565b6101dc610355366004612650565b610d30565b610205610d7e565b61037561037036600461259d565b610e87565b604080519384526020840192909252908201526060016101e9565b6101dc61039e366004612650565b610f89565b6101dc6103b1366004612650565b611011565b6101dc6103c4366004612549565b611094565b6101dc6103d7366004612549565b61115d565b6102056103ea366004612732565b611226565b6101dc6103fd366004612549565b61131f565b6101dc610410366004612549565b6113e8565b610205610423366004612783565b61146b565b6101dc610436366004612549565b61153d565b6060846001600160a01b03166359a291418561048d5784848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061049d92505050565b6040805160008152602081019091525b60006040518363ffffffff1660e01b81526004016104bc9291906127f8565b6000604051808303816000875af11580156104db573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261050391908101906128d6565b95945050505050565b60008561053a576040805160016020820152600281830152815180820383018152606090910190915261055d565b604080516001602082015260008183015281518082038301815260609091019091525b604051631863e80960e01b81529091506001600160a01b03891690631863e80990610598908a9085908a908c908b908b908b9060040161290a565b600060405180830381600087803b1580156105b257600080fd5b505af11580156105c6573d6000803e3d6000fd5b505050505050505050505050565b604051630254d47f60e31b81526001600160a01b038516906312a6a3f89061060490869086908690600401612989565b600060405180830381600087803b15801561061e57600080fd5b505af1158015610632573d6000803e3d6000fd5b5050505050505050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461068557604051630b00ec8f60e11b815260040160405180910390fd5b61068e81611606565b50565b60405163a1b2bf8b60e01b81526001600160a01b0385169063a1b2bf8b9061060490869086908690600401612989565b60006106eb7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b905090565b6000306001600160a01b0316637730599e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610730573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106eb91906129a3565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf42873491506107af90849060040161240c565b602060405180830381865afa1580156107cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f091906129bc565b6108155760405162461bcd60e51b815260040161080c906129d9565b60405180910390fd5b61050385640200000000868661180e565b60405163cf97256d60e01b81526001600160a01b0383811660048301526024820183905284169063cf97256d906044015b600060405180830381600087803b15801561087157600080fd5b505af1158015610885573d6000803e3d6000fd5b50505050505050565b60405163048620af60e11b81526001600160a01b0386169063090c415e906108c0908790879087908790600401612a25565b600060405180830381600087803b1580156108da57600080fd5b505af11580156108ee573d6000803e3d6000fd5b505050505050505050565b604080516000808252602082018181528284019093526060926001600160a01b03898116936374041e02938a93928416926330d9c9159261094292913091839160648201612a4d565b604051602081830303815290604052915060e01b6020820180516001600160e01b0383818316178352505050506001886109b25787878080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506109c292505050565b6040805160008152602081019091525b6040518563ffffffff1660e01b81526004016109e19493929190612a9e565b6000604051808303816000875af1158015610a00573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a2891908101906128d6565b9695505050505050565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf4287349150610a8d90849060040161240c565b602060405180830381865afa158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace91906129bc565b610aea5760405162461bcd60e51b815260040161080c906129d9565b610afb856401000000008686611b1e565b83838080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509298975050505050505050565b604051632704839760e01b815260048101839052602481018290526001600160a01b03841690632704839790604401610857565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf4287349150610bca90849060040161240c565b602060405180830381865afa158015610be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0b91906129bc565b610c275760405162461bcd60e51b815260040161080c906129d9565b604051631fb6491d60e11b81526000903390633f6c923a90610c4f9088908890600401612b10565b600060405180830381865afa158015610c6c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610c949190810190612b58565b9050866001600160a01b031681606001516001600160a01b031614610cbb57610cbb612c5e565b6040518681527f58b69f57828e6962d216502094c54f6562f3bf082ba758966c3454f9e37b15259060200160405180910390a184848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929a9950505050505050505050565b6040805160008082526020820181815282840182815260608085019095526001600160a01b038a811694631e6d0a84948b949285169363d86ed3e59361094293309284929060848301612c74565b600054610100900460ff1615808015610d9e5750600054600160ff909116105b80610db85750303b158015610db8575060005460ff166001145b610e1b5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161080c565b6000805460ff191660011790558015610e3e576000805461ff0019166101001790555b801561068e576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498906020015b60405180910390a150565b604051634b61cc3360e01b81523060048201526001600160a01b0383811660248301526303e83e99604483015260036064830152600091829182918291881690634b61cc3390608401600060405180830381865afa158015610eed573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610f159190810190612cda565b9050610f3d81600081518110610f2d57610f2d612d73565b602002602001015160001c611c50565b81600181518110610f5057610f50612d73565b602002602001015160001c82600281518110610f6e57610f6e612d73565b602002602001015160001c9350935093505093509350939050565b6060856001600160a01b031663768fabb085610fdb5784848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610feb92505050565b6040805160008152602081019091525b8760008060006040518663ffffffff1660e01b81526004016109e1959493929190612d89565b6060856001600160a01b031663b724211e856110635784848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061107392505050565b6040805160008152602081019091525b8760006040518463ffffffff1660e01b81526004016109e193929190612dce565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf42873491506110ef90849060040161240c565b602060405180830381865afa15801561110c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061113091906129bc565b61114c5760405162461bcd60e51b815260040161080c906129d9565b610afb856410000000008686611b1e565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf42873491506111b890849060040161240c565b602060405180830381865afa1580156111d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111f991906129bc565b6112155760405162461bcd60e51b815260040161080c906129d9565b61050385640800000000868661180e565b60408051600380825260808201909252600091602082016060803683370190505090508360001b8160008151811061126057611260612d73565b6020026020010181815250508260001b8160018151811061128357611283612d73565b6020026020010181815250508160001b816002815181106112a6576112a6612d73565b602090810291909101015260405163048620af60e11b81526001600160a01b0387169063090c415e906112e59088906303e83e99908690600401612dfc565b600060405180830381600087803b1580156112ff57600080fd5b505af1158015611313573d6000803e3d6000fd5b50505050505050505050565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf428734915061137a90849060040161240c565b602060405180830381865afa158015611397573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113bb91906129bc565b6113d75760405162461bcd60e51b815260040161080c906129d9565b610afb856404000000008686611b1e565b604051634c4d861f60e11b81526060906001600160a01b0385169063989b0c3e9061141c9086908690600090600401612e59565b6000604051808303816000875af115801561143b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261146391908101906128d6565b949350505050565b81818080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf42873491506114c490849060040161240c565b602060405180830381865afa1580156114e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061150591906129bc565b6115215760405162461bcd60e51b815260040161080c906129d9565b848460405162461bcd60e51b815260040161080c929190612b10565b606082828080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051632fd0a1cd60e21b815233925063bf428734915061159890849060040161240c565b602060405180830381865afa1580156115b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115d991906129bc565b6115f55760405162461bcd60e51b815260040161080c906129d9565b61050385642000000000868661180e565b60006116307f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b0316036116865760405162461bcd60e51b815260206004820152601d60248201527f5555505350726f786961626c653a206e6f742075706772616461626c65000000604482015260640161080c565b806001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e891906129a3565b6116f06106f0565b146117495760405162461bcd60e51b815260206004820152602360248201527f5555505350726f786961626c653a206e6f7420636f6d70617469626c65206c6f60448201526267696360e81b606482015260840161080c565b6001600160a01b03811630036117a15760405162461bcd60e51b815260206004820152601960248201527f5555505350726f786961626c653a2070726f7879206c6f6f7000000000000000604482015260640161080c565b6117c9817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55565b7fe011bc04c286c344a8fcbb8de77f953da762c3e25d8cdea984147fc4168a5dcc6117f26106f0565b604080519182526001600160a01b038416602083015201610e7c565b604051636b4f333560e01b81526001600160a01b03851660048201526060906000903390636b4f333590602401602060405180830381865afa158015611858573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061187c91906129bc565b604051631fb6491d60e11b81529091506000903390633f6c923a906118a79088908890600401612b10565b600060405180830381865afa1580156118c4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118ec9190810190612b58565b9050600061190f6000896000801b60405180602001604052806000815250611cbe565b60c081018890529050611920612292565b611970826040518060200160405280600081525089898080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d0292505050565b9550905083156119f057602081015160ff16156119eb5760405162461bcd60e51b815260206004820152603360248201527f41677265656d656e744d6f636b3a2063616c6c6261636b2073686f756c64206e60448201527206f74207265616368206a61696c65642061707606c1b606482015260840161080c565b611ab4565b604051632fd0a1cd60e21b8152339063bf42873490611a1390889060040161240c565b602060405180830381865afa158015611a30573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a5491906129bc565b611ab45760405162461bcd60e51b815260206004820152602b60248201527f41677265656d656e744d6f636b3a20637478206e6f742076616c69642061667460448201526a65722063616c6c6261636b60a81b606482015260840161080c565b825160208085015160808601516040805160ff958616815294909216928401929092526001600160e01b031990911682820152517fbebfa520000ac6154adc3325e12aab81b1e37b21a779c68db565a7db91de76949181900360600190a150505050949350505050565b604051631fb6491d60e11b81526000903390633f6c923a90611b469086908690600401612b10565b600060405180830381865afa158015611b63573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611b8b9190810190612b58565b90506000611bae6000876000801b60405180602001604052806000815250611cbe565b9050848160c00181815250506000611bfc8286868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611f4e92505050565b90507f8d9bcf46f17f82759c79ab71d4382eb5a73791d05b176ea38f61b4c6d7315fe383600001518460200151856080015184604051611c3f9493929190612e7d565b60405180910390a150505050505050565b60006001600160ff1b03821115611cba5760405162461bcd60e51b815260206004820152602860248201527f53616665436173743a2076616c756520646f65736e27742066697420696e2061604482015267371034b73a191a9b60c11b606482015260840161080c565b5090565b6040805160e08101825260006080820181905260a0820181905260c08201526001600160a01b03958616815293909416602084015292820152606081019190915290565b611d0a612292565b6020840151604051633e7d48bd60e21b81526001600160a01b03909116600482015260609060009081908190339063f9f522f490602401606060405180830381865afa158015611d5e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d829190612eb1565b88965091945092509050828015611d97575081155b15611f4357611da68489612105565b93508760c001518116600003611f31576000611dc58960c0015161218a565b89516040808c015160608d015182516000815260208101909352611df39392309291908e9060448101612c74565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417909352918b015160c08c0151925163079b42a160e21b81529193503392631e6d0a8492611e629291869164200000000091909114908b90600401612a9e565b6000604051808303816000875af1158015611e81573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611ea991908101906128d6565b604051631fb6491d60e11b81529095503390633f6c923a90611ecf90889060040161240c565b600060405180830381865afa158015611eec573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611f149190810190612b58565b9550611f298960800151876101000151612221565b610100870152505b611f408686610100015161223f565b93505b505050935093915050565b6020820151604051633e7d48bd60e21b81526001600160a01b03909116600482015260609060009081908190339063f9f522f490602401606060405180830381865afa158015611fa2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fc69190612eb1565b91945092509050828015611fd8575081155b156120fc576000611fe98688612105565b90508660c0015182166000036120ee5760006120088860c0015161218a565b88516040808b015160608c01518251600081526020810190935261203493923092919060448101612a4d565b60408051601f19818403018152918152602080830180516001600160e01b03166001600160e01b031990951694909417909352918a015160c08b01519251633a020f0160e11b815291935033926374041e02926120a39291869164100000000091909114908890600401612a9e565b6000604051808303816000875af11580156120c2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120ea91908101906128d6565b9550505b6120f986600061223f565b50505b50505092915050565b6020810151608082015160a08301518351604051630768fabb60e41b8152606094339463768fabb09461213c948a94600401612d89565b6000604051808303816000875af115801561215b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261218391908101906128d6565b9392505050565b600064010000000082036121a657506330d9c91560e01b919050565b64040000000082036121c05750630221347d60e61b919050565b64100000000082036121da5750635f9e7d7760e01b919050565b64020000000082036121f4575063d86ed3e560e01b919050565b640800000000820361220e575063230dbd2960e01b919050565b506353c11f9960e01b919050565b919050565b6000612183600061223a61223486611c50565b85612267565b61227c565b604051634c4d861f60e11b8152606090339063989b0c3e9061213c90869086906004016127f8565b60008183136122765782612183565b50919050565b600081831361228b5781612183565b5090919050565b604080516101608101825260008082526020820181905291810182905260608082018390526080820183905260a082015260c0810182905260e081018290526101008101829052610120810182905261014081019190915290565b6001600160a01b038116811461068e57600080fd5b801515811461068e57600080fd5b60008083601f84011261232257600080fd5b5081356001600160401b0381111561233957600080fd5b60208301915083602082850101111561235157600080fd5b9250929050565b6000806000806060858703121561236e57600080fd5b8435612379816122ed565b9350602085013561238981612302565b925060408501356001600160401b038111156123a457600080fd5b6123b087828801612310565b95989497509550505050565b60005b838110156123d75781810151838201526020016123bf565b50506000910152565b600081518084526123f88160208601602086016123bc565b601f01601f19169290920160200192915050565b60208152600061218360208301846123e0565b600080600080600080600060e0888a03121561243a57600080fd5b8735612445816122ed565b965060208801359550604088013561245c81612302565b9450606088013561246c816122ed565b9350608088013561247c816122ed565b9699959850939692959460a0840135945060c09093013592915050565b60008083601f8401126124ab57600080fd5b5081356001600160401b038111156124c257600080fd5b6020830191508360208260051b850101111561235157600080fd5b600080600080606085870312156124f357600080fd5b84356124fe816122ed565b93506020850135925060408501356001600160401b0381111561252057600080fd5b6123b087828801612499565b60006020828403121561253e57600080fd5b8135612183816122ed565b60008060006040848603121561255e57600080fd5b8335612569816122ed565b925060208401356001600160401b0381111561258457600080fd5b61259086828701612310565b9497909650939450505050565b6000806000606084860312156125b257600080fd5b83356125bd816122ed565b925060208401356125cd816122ed565b929592945050506040919091013590565b6000806000806000608086880312156125f657600080fd5b8535612601816122ed565b94506020860135612611816122ed565b93506040860135925060608601356001600160401b0381111561263357600080fd5b61263f88828901612499565b969995985093965092949392505050565b60008060008060006080868803121561266857600080fd5b8535612673816122ed565b94506020860135612683816122ed565b9350604086013561269381612302565b925060608601356001600160401b038111156126ae57600080fd5b61263f88828901612310565b6000806000606084860312156126cf57600080fd5b83356126da816122ed565b95602085013595506040909401359392505050565b6000806000806060858703121561270557600080fd5b8435612710816122ed565b93506020850135925060408501356001600160401b038111156123a457600080fd5b600080600080600060a0868803121561274a57600080fd5b8535612755816122ed565b94506020860135612765816122ed565b94979496505050506040830135926060810135926080909101359150565b6000806000806040858703121561279957600080fd5b84356001600160401b03808211156127b057600080fd5b6127bc88838901612310565b909650945060208701359150808211156127d557600080fd5b506123b087828801612310565b634e487b7160e01b600052604160045260246000fd5b60408152600061280b60408301856123e0565b90508260208301529392505050565b60405161016081016001600160401b038111828210171561283d5761283d6127e2565b60405290565b604051601f8201601f191681016001600160401b038111828210171561286b5761286b6127e2565b604052919050565b600082601f83011261288457600080fd5b81516001600160401b0381111561289d5761289d6127e2565b6128b0601f8201601f1916602001612843565b8181528460208386010111156128c557600080fd5b6114638260208301602087016123bc565b6000602082840312156128e857600080fd5b81516001600160401b038111156128fe57600080fd5b61146384828501612873565b87815260e06020820152600061292360e08301896123e0565b6001600160a01b03978816604084015295151560608301525092909416608083015260a082015260c0019190915292915050565b81835260006001600160fb1b0383111561297057600080fd5b8260051b80836020870137939093016020019392505050565b838152604060208201526000610503604083018486612957565b6000602082840312156129b557600080fd5b5051919050565b6000602082840312156129ce57600080fd5b815161218381612302565b6020808252602c908201527f41677265656d656e744d6f636b3a20637478206e6f742076616c69642067697660408201526b656e20627920686f73743f2160a01b606082015260800190565b60018060a01b0385168152836020820152606060408201526000610a28606083018486612957565b6001600160a01b038681168252851660208201526040810184905260a060608201819052600090612a80908301856123e0565b8281036080840152612a9281856123e0565b98975050505050505050565b6001600160a01b0385168152608060208201819052600090612ac2908301866123e0565b84151560408401528281036060840152612adc81856123e0565b979650505050505050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000611463602083018486612ae7565b805160ff8116811461221c57600080fd5b805161221c816122ed565b80516001600160e01b03198116811461221c57600080fd5b600060208284031215612b6a57600080fd5b81516001600160401b0380821115612b8157600080fd5b908301906101608286031215612b9657600080fd5b612b9e61281a565b612ba783612b24565b8152612bb560208401612b24565b602082015260408301516040820152612bd060608401612b35565b6060820152612be160808401612b40565b608082015260a083015182811115612bf857600080fd5b612c0487828601612873565b60a08301525060c083015160c082015260e083015160e0820152610100915081830151828201526101209150612c3b828401612b35565b828201526101409150612c4f828401612b35565b91810191909152949350505050565b634e487b7160e01b600052600160045260246000fd5b6001600160a01b038781168252861660208201526040810185905260c060608201819052600090612ca7908301866123e0565b8281036080840152612cb981866123e0565b905082810360a0840152612ccd81856123e0565b9998505050505050505050565b60006020808385031215612ced57600080fd5b82516001600160401b0380821115612d0457600080fd5b818501915085601f830112612d1857600080fd5b815181811115612d2a57612d2a6127e2565b8060051b9150612d3b848301612843565b8181529183018401918481019088841115612d5557600080fd5b938501935b83851015612a9257845182529385019390850190612d5a565b634e487b7160e01b600052603260045260246000fd5b60a081526000612d9c60a08301886123e0565b6001600160a01b0396871660208401526040830195909552506060810192909252909216608090920191909152919050565b606081526000612de160608301866123e0565b6001600160a01b039490941660208301525060400152919050565b6001600160a01b038416815260208082018490526060604083018190528351908301819052600091848101916080850190845b81811015612e4b57845183529383019391830191600101612e2f565b509098975050505050505050565b604081526000612e6d604083018587612ae7565b9050826020830152949350505050565b60ff8516815260ff8416602082015263ffffffff60e01b83166040820152608060608201526000610a2860808301846123e0565b600080600060608486031215612ec657600080fd5b8351612ed181612302565b6020850151909350612ee281612302565b8092505060408401519050925092509256fea2646970667358221220820eeef030716eb7f586c244aaf358b429f8d4d5928f75a4854d7b235c88d89064736f6c63430008170033"

Methods

  • Parameters

    • address: string

    Returns AgreementMock

  • Parameters

    • signer: Signer

    Returns AgreementMock__factory

  • Parameters

    • host: string
    • t: BytesLike
    • v: BigNumberish
    • Optional overrides: Overrides & {
          from?: string;
      }

    Returns Promise<AgreementMock>

  • Parameters

    • host: string
    • t: BytesLike
    • v: BigNumberish
    • Optional overrides: Overrides & {
          from?: string;
      }

    Returns TransactionRequest

  • Parameters

    • address: string
    • signerOrProvider: Signer | Provider

    Returns AgreementMock

  • Returns AgreementMockInterface

Generated using TypeDoc