UNPKG

@etherisc/gif-contracts

Version:

This repository holds the GIF core contracts and tools to develop, test and deploy GIF instances.

1,747 lines 779 kB
{ "abi": [ { "inputs": [ { "internalType": "bytes32", "name": "_name", "type": "bytes32" }, { "internalType": "address", "name": "_registry", "type": "address" }, { "internalType": "address", "name": "_chainLinkToken", "type": "address" }, { "internalType": "address", "name": "_chainLinkOperator", "type": "address" }, { "internalType": "bytes32", "name": "_jobId", "type": "bytes32" }, { "internalType": "uint256", "name": "_payment", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "id", "type": "bytes32" } ], "name": "ChainlinkCancelled", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "id", "type": "bytes32" } ], "name": "ChainlinkFulfilled", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "id", "type": "bytes32" } ], "name": "ChainlinkRequested", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "requestId", "type": "uint256" }, { "indexed": false, "internalType": "bytes32", "name": "chainlinkRequestId", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "projectId", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "uaiId", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "cropId", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "aaay", "type": "uint256" } ], "name": "LogAyiiFulfill", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "requestId", "type": "uint256" }, { "indexed": false, "internalType": "bytes32", "name": "chainlinkRequestId", "type": "bytes32" } ], "name": "LogAyiiRequest", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentApproved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentArchived", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "componentName", "type": "bytes32" }, { "indexed": false, "internalType": "enum IComponent.ComponentType", "name": "componentType", "type": "uint8" }, { "indexed": false, "internalType": "address", "name": "componentAddress", "type": "address" }, { "indexed": false, "internalType": "address", "name": "registryAddress", "type": "address" } ], "name": "LogComponentCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentDeclined", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentPaused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "componentName", "type": "bytes32" }, { "indexed": false, "internalType": "enum IComponent.ComponentType", "name": "componentType", "type": "uint8" }, { "indexed": false, "internalType": "address", "name": "componentAddress", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentProposed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentResumed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" }, { "indexed": false, "internalType": "enum IComponent.ComponentState", "name": "stateOld", "type": "uint8" }, { "indexed": false, "internalType": "enum IComponent.ComponentState", "name": "stateNew", "type": "uint8" } ], "name": "LogComponentStateChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentSuspended", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "LogComponentUnpaused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "componentId", "type": "uint256" } ], "name": "LogOracleApproved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "oracleAddress", "type": "address" } ], "name": "LogOracleCreated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "componentId", "type": "uint256" } ], "name": "LogOracleDeclined", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint256", "name": "componentId", "type": "uint256" } ], "name": "LogOracleProposed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "inputs": [], "name": "approvalCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "archiveCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "requestId", "type": "uint256" } ], "name": "cancel", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "declineCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "chainlinkRequestId", "type": "bytes32" }, { "internalType": "bytes32", "name": "projectId", "type": "bytes32" }, { "internalType": "bytes32", "name": "uaiId", "type": "bytes32" }, { "internalType": "bytes32", "name": "cropId", "type": "bytes32" }, { "internalType": "uint256", "name": "aaay", "type": "uint256" } ], "name": "encodeFulfillParameters", "outputs": [ { "internalType": "bytes", "name": "parameterData", "type": "bytes" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "chainlinkRequestId", "type": "bytes32" }, { "internalType": "bytes32", "name": "projectId", "type": "bytes32" }, { "internalType": "bytes32", "name": "uaiId", "type": "bytes32" }, { "internalType": "bytes32", "name": "cropId", "type": "bytes32" }, { "internalType": "uint256", "name": "aaay", "type": "uint256" } ], "name": "fulfill", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "getChainlinkJobId", "outputs": [ { "internalType": "bytes32", "name": "chainlinkJobId", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getChainlinkOperator", "outputs": [ { "internalType": "address", "name": "operator", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getChainlinkPayment", "outputs": [ { "internalType": "uint256", "name": "paymentAmount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getChainlinkToken", "outputs": [ { "internalType": "address", "name": "linkTokenAddress", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getName", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getOwner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getRegistry", "outputs": [ { "internalType": "contract IRegistry", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getState", "outputs": [ { "internalType": "enum IComponent.ComponentState", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getType", "outputs": [ { "internalType": "enum IComponent.ComponentType", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "name": "gifRequests", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isOracle", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isProduct", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "isRiskpool", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "jobId", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pauseCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "payment", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "proposalCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "gifRequestId", "type": "uint256" }, { "internalType": "bytes", "name": "input", "type": "bytes" } ], "name": "request", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "resumeCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "setId", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "suspendCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "unpauseCallback", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_chainLinkToken", "type": "address" }, { "internalType": "address", "name": "_chainLinkOperator", "type": "address" }, { "internalType": "bytes32", "name": "_jobId", "type": "bytes32" }, { "internalType": "uint256", "name": "_payment", "type": "uint256" } ], "name": "updateRequestDetails", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "allSourcePaths": { "13": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/token/ERC20/IERC20.sol", "18": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/token/ERC721/IERC721.sol", "22": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/utils/Context.sol", "26": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/utils/introspection/IERC165.sol", "29": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/components/Component.sol", "30": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/components/IComponent.sol", "31": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/components/IOracle.sol", "34": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/components/Oracle.sol", "37": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/modules/IAccess.sol", "39": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/modules/IComponentEvents.sol", "4": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/access/Ownable.sol", "44": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/modules/IRegistry.sol", "46": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IComponentOwnerService.sol", "47": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IInstanceOperatorService.sol", "48": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IInstanceService.sol", "49": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IOracleService.sol", "50": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IProductService.sol", "51": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/services/IRiskpoolService.sol", "53": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/tokens/IBundleToken.sol", "54": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/Chainlink.sol", "55": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/ChainlinkClient.sol", "56": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/ChainlinkRequestInterface.sol", "57": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/ENSInterface.sol", "58": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/LinkTokenInterface.sol", "59": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/OperatorInterface.sol", "60": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/OracleInterface.sol", "61": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/interfaces/PointerInterface.sol", "62": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/vendor/BufferChainlink.sol", "63": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/vendor/CBORChainlink.sol", "64": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/vendor/ENSResolver.sol", "66": "contracts/examples/AyiiOracle.sol", "71": "contracts/examples/strings.sol" }, "ast": { "absolutePath": "contracts/examples/AyiiOracle.sol", "exportedSymbols": { "AyiiOracle": [ 385 ], "BufferChainlink": [ 28140 ], "CBORChainlink": [ 28587 ], "Chainlink": [ 25676 ], "ChainlinkClient": [ 17961 ], "ChainlinkRequestInterface": [ 25709 ], "Component": [ 25407 ], "Context": [ 24074 ], "ENSInterface": [ 25789 ], "ENSResolver_Chainlink": [ 25982 ], "IAccess": [ 21938 ], "IBundle": [ 20491 ], "IBundleToken": [ 24052 ], "IComponent": [ 22099 ], "IComponentEvents": [ 22419 ], "IComponentOwnerService": [ 23478 ], "IERC165": [ 27203 ], "IERC20": [ 18510 ], "IERC721": [ 23745 ], "IInstanceOperatorService": [ 23629 ], "IInstanceService": [ 22849 ], "IOracle": [ 22133 ], "IOracleService": [ 23755 ], "IPolicy": [ 20837 ], "IPool": [ 21652 ], "IProductService": [ 23900 ], "IRegistry": [ 21750 ], "IRiskpoolService": [ 24006 ], "ITreasury": [ 23443 ], "LinkTokenInterface": [ 25884 ], "OperatorInterface": [ 25964 ], "Oracle": [ 17368 ], "OracleInterface": [ 28626 ], "Ownable": [ 20950 ], "PointerInterface": [ 25972 ], "strings": [ 3096 ] }, "id": 386, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { "id": 59, "literals": [ "solidity", "0.8", ".2" ], "nodeType": "PragmaDirective", "src": "32:22:66" }, { "absolutePath": "contracts/examples/strings.sol", "file": "./strings.sol", "id": 60, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 386, "sourceUnit": 3097, "src": "56:23:66", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "/home/vscode/.brownie/packages/smartcontractkit/chainlink@1.6.0/contracts/src/v0.8/ChainlinkClient.sol", "file": "@chainlink/contracts/src/v0.8/ChainlinkClient.sol", "id": 61, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 386, "sourceUnit": 17962, "src": "81:59:66", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "/home/vscode/.brownie/packages/etherisc/gif-interface@3b0002a/contracts/components/Oracle.sol", "file": "@etherisc/gif-interface/contracts/components/Oracle.sol", "id": 62, "nameLocation": "-1:-1:-1", "nodeType": "ImportDirective", "scope": 386, "sourceUnit": 17369, "src": "141:65:66", "symbolAliases": [], "unitAlias": "" }, { "abstract": false, "baseContracts": [ { "baseName": { "id": 63, "name": "Oracle", "nodeType": "IdentifierPath", "referencedDeclaration": 17368, "src": "236:6:66" }, "id": 64, "nodeType": "InheritanceSpecifier", "src": "236:6:66" }, { "baseName": { "id": 65, "name": "ChainlinkClient", "nodeType": "IdentifierPath", "referencedDeclaration": 17961, "src": "244:15:66" }, "id": 66, "nodeType": "InheritanceSpecifier", "src": "244:15:66" } ], "contractDependencies": [ 17368, 17961, 20950, 22099, 22133, 22419, 24074, 25407 ], "contractKind": "contract", "fullyImplemented": true, "id": 385, "linearizedBaseContracts": [ 385, 17961, 17368, 25407, 20950, 24074, 22419, 22133, 22099 ], "name": "AyiiOracle", "nameLocation": "217:10:66", "nodeType": "ContractDefinition", "nodes": [ { "id": 69, "libraryName": { "id": 67, "name": "strings", "nodeType": "IdentifierPath", "referencedDeclaration": 3096, "src": "273:7:66" }, "nodeType": "UsingForDirective", "src": "267:26:66", "typeName": { "id": 68, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "285:7:66", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } } }, { "id": 73, "libraryName": { "id": 70, "name": "Chainlink", "nodeType": "IdentifierPath", "referencedDeclaration": 25676, "src": "304:9:66" }, "nodeType": "UsingForDirective", "src": "298:38:66", "typeName": { "id": 72, "nodeType": "UserDefinedTypeName", "pathNode": { "id": 71, "name": "Chainlink.Request", "nodeType": "IdentifierPath", "referencedDeclaration": 25433, "src": "318:17:66" }, "referencedDeclaration": 25433, "src": "318:17:66", "typeDescriptions": { "typeIdentifier": "t_struct$_Request_$25433_storage_ptr", "typeString": "struct Chainlink.Request" } } }, { "constant": false, "functionSelector": "3fb80f51", "id": 77, "mutability": "mutable", "name": "gifRequests", "nameLocation": "425:11:66", "nodeType": "VariableDeclaration", "scope": 385, "src": "342:94:66", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" }, "typeName": { "id": 76, "keyType": { "id": 74, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "350:7:66", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", "src": "342:75:66", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" }, "valueType": { "id": 75, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "388:7:66", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } }, "visibility": "public" }, { "constant": false, "functionSelector": "c2939d97", "id": 79, "mutability": "mutable", "name": "jobId", "nameLocation": "457:5:66", "nodeType": "VariableDeclaration", "scope": 385, "src": "442:20:66", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 78, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "442:7:66", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "public" }, { "constant": false, "functionSelector": "42f6487a", "id": 81, "mutability": "mutable", "name": "payment", "nameLocation": "483:7:66", "nodeType": "VariableDeclaration", "scope": 385, "src": "468:22:66", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 80, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "468:7:66", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "public" }, { "anonymous": false, "id": 87, "name": "LogAyiiRequest", "nameLocation": "503:14:66", "nodeType": "EventDefinition", "parameters": { "id": 86, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 83, "indexed": false, "mutability": "mutable", "name": "requestId", "nameLocation": "526:9:66", "nodeType": "VariableDeclaration", "scope": 87, "src": "518:17:66", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 82, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "518:7:66", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 85, "indexed": false, "mutability": "mutable", "name": "chainlinkRequestId", "nameLocation": "545:18:66", "nodeType": "VariableDeclaration", "scope": 87, "src": "537:26:66", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 84, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "537:7:66", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "517:47:66" }, "src": "497:68:66" }, { "anonymous": false, "id": 101, "name": "LogAyiiFulfill", "nameLocation": "581:14:66", "nodeType": "EventDefinition", "parameters": { "id": 100, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 89, "indexed": false, "mutability": "mutable", "name": "requestId", "nameLocation": "613:9:66", "nodeType": "VariableDeclaration", "scope": 101, "src": "605:17:66", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 88, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "605:7:66", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" }, { "constant": false, "id": 91, "indexed": false, "mutability": "mutable", "name": "chainlinkRequestId", "nameLocation": "641:18:66", "nodeType": "VariableDeclaration", "scope": 101, "src": "633:26:66", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 90, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "633:7:66", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 93, "indexed": false, "mutability": "mutable", "name": "projectId", "nameLocation": "678:9:66", "nodeType": "VariableDeclaration", "scope": 101, "src": "670:17:66", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 92, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "670:7:66", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 95, "indexed": false, "mutability": "mutable", "name": "uaiId", "nameLocation": "705:5:66", "nodeType": "VariableDeclaration", "scope": 101, "src": "697:13:66", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 94, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "697:7:66", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 97, "indexed": false, "mutability": "mutable", "name": "cropId", "nameLocation": "728:6:66", "nodeType": "VariableDeclaration", "scope": 101, "src": "720:14:66", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 96, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "720:7:66", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 99, "indexed": false, "mutability": "mutable", "name": "aaay", "nameLocation": "752:4:66", "nodeType": "VariableDeclaration", "scope": 101, "src": "744:12:66", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 98, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "744:7:66", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "595:167:66" }, "src": "575:188:66" }, { "body": { "id": 127, "nodeType": "Block", "src": "993:144:66", "statements": [ { "expression": { "arguments": [ { "id": 121, "name": "_chainLinkToken", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 107, "src": "1037:15:66", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 122, "name": "_chainLinkOperator", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 109, "src": "1067:18:66", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, { "id": 123, "name": "_jobId", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 111, "src": "1100:6:66", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { "id": 124, "name": "_payment", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 113, "src": "1121:8:66", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_address", "typeString": "address" }, { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, { "typeIdentifier": "t_uint256", "typeString": "uint256" } ], "id": 120, "name": "updateRequestDetails", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 174, "src": "1003:20:66", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_bytes32_$_t_uint256_$returns$__$", "typeString": "function (address,address,bytes32,uint256)" } }, "id": 125, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "1003:127:66", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 126, "nodeType": "ExpressionStatement", "src": "1003:127:66" } ] }, "id": 128, "implemented": true, "kind": "constructor", "modifiers": [ { "arguments": [ { "id": 116, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 103, "src": "971:5:66", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, { "id": 117, "name": "_registry", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 105, "src": "978:9:66", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], "id": 118, "modifierName": { "id": 115, "name": "Oracle", "nodeType": "IdentifierPath", "referencedDeclaration": 17368, "src": "964:6:66" }, "nodeType": "ModifierInvocation", "src": "964:24:66" } ], "name": "", "nameLocation": "-1:-1:-1", "nodeType": "FunctionDefinition", "parameters": { "id": 114, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 103, "mutability": "mutable", "name": "_name", "nameLocation": "798:5:66", "nodeType": "VariableDeclaration", "scope": 128, "src": "790:13:66", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 102, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "790:7:66", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 105, "mutability": "mutable", "name": "_registry", "nameLocation": "821:9:66", "nodeType": "VariableDeclaration", "scope": 128, "src": "813:17:66", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 104, "name": "address", "nodeType": "ElementaryTypeName", "src": "813:7:66", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 107, "mutability": "mutable", "name": "_chainLinkToken", "nameLocation": "848:15:66", "nodeType": "VariableDeclaration", "scope": 128, "src": "840:23:66", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 106, "name": "address", "nodeType": "ElementaryTypeName", "src": "840:7:66", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 109, "mutability": "mutable", "name": "_chainLinkOperator", "nameLocation": "881:18:66", "nodeType": "VariableDeclaration", "scope": 128, "src":