{
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        }
      ],
      "name": "allowance",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "remaining",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "approve",
      "outputs": [
        {
          "internalType": "bool",
          "name": "success",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "balanceOf",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "balance",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "decimals",
      "outputs": [
        {
          "internalType": "uint8",
          "name": "decimalPlaces",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "addedValue",
          "type": "uint256"
        }
      ],
      "name": "decreaseApproval",
      "outputs": [
        {
          "internalType": "bool",
          "name": "success",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "spender",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "subtractedValue",
          "type": "uint256"
        }
      ],
      "name": "increaseApproval",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "name",
      "outputs": [
        {
          "internalType": "string",
          "name": "tokenName",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "symbol",
      "outputs": [
        {
          "internalType": "string",
          "name": "tokenSymbol",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "totalSupply",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "totalTokensIssued",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "transfer",
      "outputs": [
        {
          "internalType": "bool",
          "name": "success",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "transferAndCall",
      "outputs": [
        {
          "internalType": "bool",
          "name": "success",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "transferFrom",
      "outputs": [
        {
          "internalType": "bool",
          "name": "success",
          "type": "bool"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "allSourcePaths": {
    "60": "node_modules/@chainlink/contracts/src/v0.8/interfaces/LinkTokenInterface.sol"
  },
  "ast": {
    "absolutePath": "node_modules/@chainlink/contracts/src/v0.8/interfaces/LinkTokenInterface.sol",
    "exportedSymbols": {
      "LinkTokenInterface": [
        19719
      ]
    },
    "id": 19720,
    "license": "MIT",
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 19626,
        "literals": [
          "solidity",
          "^",
          "0.8",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "32:23:60"
      },
      {
        "abstract": false,
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "interface",
        "fullyImplemented": false,
        "id": 19719,
        "linearizedBaseContracts": [
          19719
        ],
        "name": "LinkTokenInterface",
        "nameLocation": "67:18:60",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "functionSelector": "dd62ed3e",
            "id": 19635,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "allowance",
            "nameLocation": "100:9:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19631,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19628,
                  "mutability": "mutable",
                  "name": "owner",
                  "nameLocation": "123:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19635,
                  "src": "115:13:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19627,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "115:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19630,
                  "mutability": "mutable",
                  "name": "spender",
                  "nameLocation": "142:7:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19635,
                  "src": "134:15:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19629,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "134:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "109:44:60"
            },
            "returnParameters": {
              "id": 19634,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19633,
                  "mutability": "mutable",
                  "name": "remaining",
                  "nameLocation": "204:9:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19635,
                  "src": "196:17:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19632,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "196:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "188:31:60"
            },
            "scope": 19719,
            "src": "91:129:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "095ea7b3",
            "id": 19644,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "approve",
            "nameLocation": "233:7:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19640,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19637,
                  "mutability": "mutable",
                  "name": "spender",
                  "nameLocation": "254:7:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19644,
                  "src": "246:15:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19636,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "246:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19639,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "275:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19644,
                  "src": "267:13:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19638,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "267:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "240:44:60"
            },
            "returnParameters": {
              "id": 19643,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19642,
                  "mutability": "mutable",
                  "name": "success",
                  "nameLocation": "323:7:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19644,
                  "src": "318:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 19641,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "318:4:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "310:26:60"
            },
            "scope": 19719,
            "src": "224:113:60",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "70a08231",
            "id": 19651,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "balanceOf",
            "nameLocation": "350:9:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19647,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19646,
                  "mutability": "mutable",
                  "name": "owner",
                  "nameLocation": "373:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19651,
                  "src": "365:13:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19645,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "365:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "359:23:60"
            },
            "returnParameters": {
              "id": 19650,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19649,
                  "mutability": "mutable",
                  "name": "balance",
                  "nameLocation": "433:7:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19651,
                  "src": "425:15:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19648,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "425:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "417:29:60"
            },
            "scope": 19719,
            "src": "341:106:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "313ce567",
            "id": 19656,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "decimals",
            "nameLocation": "460:8:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19652,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "468:2:60"
            },
            "returnParameters": {
              "id": 19655,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19654,
                  "mutability": "mutable",
                  "name": "decimalPlaces",
                  "nameLocation": "519:13:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19656,
                  "src": "513:19:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint8",
                    "typeString": "uint8"
                  },
                  "typeName": {
                    "id": 19653,
                    "name": "uint8",
                    "nodeType": "ElementaryTypeName",
                    "src": "513:5:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint8",
                      "typeString": "uint8"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "505:33:60"
            },
            "scope": 19719,
            "src": "451:88:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "66188463",
            "id": 19665,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "decreaseApproval",
            "nameLocation": "552:16:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19661,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19658,
                  "mutability": "mutable",
                  "name": "spender",
                  "nameLocation": "582:7:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19665,
                  "src": "574:15:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19657,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "574:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19660,
                  "mutability": "mutable",
                  "name": "addedValue",
                  "nameLocation": "603:10:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19665,
                  "src": "595:18:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19659,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "595:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "568:49:60"
            },
            "returnParameters": {
              "id": 19664,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19663,
                  "mutability": "mutable",
                  "name": "success",
                  "nameLocation": "656:7:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19665,
                  "src": "651:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 19662,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "651:4:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "643:26:60"
            },
            "scope": 19719,
            "src": "543:127:60",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "d73dd623",
            "id": 19672,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "increaseApproval",
            "nameLocation": "683:16:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19670,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19667,
                  "mutability": "mutable",
                  "name": "spender",
                  "nameLocation": "713:7:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19672,
                  "src": "705:15:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19666,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "705:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19669,
                  "mutability": "mutable",
                  "name": "subtractedValue",
                  "nameLocation": "734:15:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19672,
                  "src": "726:23:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19668,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "726:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "699:54:60"
            },
            "returnParameters": {
              "id": 19671,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "762:0:60"
            },
            "scope": 19719,
            "src": "674:89:60",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "06fdde03",
            "id": 19677,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "name",
            "nameLocation": "776:4:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19673,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "780:2:60"
            },
            "returnParameters": {
              "id": 19676,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19675,
                  "mutability": "mutable",
                  "name": "tokenName",
                  "nameLocation": "839:9:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19677,
                  "src": "825:23:60",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 19674,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "825:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "817:37:60"
            },
            "scope": 19719,
            "src": "767:88:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "95d89b41",
            "id": 19682,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "symbol",
            "nameLocation": "868:6:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19678,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "874:2:60"
            },
            "returnParameters": {
              "id": 19681,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19680,
                  "mutability": "mutable",
                  "name": "tokenSymbol",
                  "nameLocation": "933:11:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19682,
                  "src": "919:25:60",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 19679,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "919:6:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "911:39:60"
            },
            "scope": 19719,
            "src": "859:92:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "18160ddd",
            "id": 19687,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "totalSupply",
            "nameLocation": "964:11:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19683,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "975:2:60"
            },
            "returnParameters": {
              "id": 19686,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19685,
                  "mutability": "mutable",
                  "name": "totalTokensIssued",
                  "nameLocation": "1028:17:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19687,
                  "src": "1020:25:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19684,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1020:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1012:39:60"
            },
            "scope": 19719,
            "src": "955:97:60",
            "stateMutability": "view",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "a9059cbb",
            "id": 19696,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "transfer",
            "nameLocation": "1065:8:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19692,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19689,
                  "mutability": "mutable",
                  "name": "to",
                  "nameLocation": "1087:2:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19696,
                  "src": "1079:10:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19688,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1079:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19691,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "1103:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19696,
                  "src": "1095:13:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19690,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1095:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1073:39:60"
            },
            "returnParameters": {
              "id": 19695,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19694,
                  "mutability": "mutable",
                  "name": "success",
                  "nameLocation": "1151:7:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19696,
                  "src": "1146:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 19693,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "1146:4:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1138:26:60"
            },
            "scope": 19719,
            "src": "1056:109:60",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "4000aea0",
            "id": 19707,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "transferAndCall",
            "nameLocation": "1178:15:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19703,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19698,
                  "mutability": "mutable",
                  "name": "to",
                  "nameLocation": "1207:2:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19707,
                  "src": "1199:10:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19697,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1199:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19700,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "1223:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19707,
                  "src": "1215:13:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19699,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1215:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19702,
                  "mutability": "mutable",
                  "name": "data",
                  "nameLocation": "1249:4:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19707,
                  "src": "1234:19:60",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 19701,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1234:5:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1193:64:60"
            },
            "returnParameters": {
              "id": 19706,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19705,
                  "mutability": "mutable",
                  "name": "success",
                  "nameLocation": "1296:7:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19707,
                  "src": "1291:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 19704,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "1291:4:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1283:26:60"
            },
            "scope": 19719,
            "src": "1169:141:60",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          },
          {
            "functionSelector": "23b872dd",
            "id": 19718,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "transferFrom",
            "nameLocation": "1323:12:60",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 19714,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19709,
                  "mutability": "mutable",
                  "name": "from",
                  "nameLocation": "1349:4:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19718,
                  "src": "1341:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19708,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1341:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19711,
                  "mutability": "mutable",
                  "name": "to",
                  "nameLocation": "1367:2:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19718,
                  "src": "1359:10:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 19710,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1359:7:60",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 19713,
                  "mutability": "mutable",
                  "name": "value",
                  "nameLocation": "1383:5:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19718,
                  "src": "1375:13:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 19712,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1375:7:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1335:57:60"
            },
            "returnParameters": {
              "id": 19717,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 19716,
                  "mutability": "mutable",
                  "name": "success",
                  "nameLocation": "1431:7:60",
                  "nodeType": "VariableDeclaration",
                  "scope": 19718,
                  "src": "1426:12:60",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 19715,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "1426:4:60",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "visibility": "internal"
                }
              ],
              "src": "1418:26:60"
            },
            "scope": 19719,
            "src": "1314:131:60",
            "stateMutability": "nonpayable",
            "virtual": false,
            "visibility": "external"
          }
        ],
        "scope": 19720,
        "src": "57:1391:60",
        "usedErrors": []
      }
    ],
    "src": "32:1417:60"
  },
  "bytecode": "",
  "bytecodeSha1": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
  "compiler": {
    "evm_version": "istanbul",
    "optimizer": {
      "enabled": true,
      "runs": 200
    },
    "version": "0.8.6+commit.11564f7e"
  },
  "contractName": "LinkTokenInterface",
  "coverageMap": {
    "branches": {},
    "statements": {}
  },
  "dependencies": [],
  "deployedBytecode": "",
  "deployedSourceMap": "",
  "language": "Solidity",
  "natspec": {
    "kind": "dev",
    "methods": {},
    "version": 1
  },
  "offset": [
    57,
    1448
  ],
  "opcodes": "",
  "pcMap": {},
  "sha1": "3d4893ec5b61249d807b6632d84844eb5400cc1a",
  "source": "// SPDX-License-Identifier: MIT\npragma solidity ^0.8.0;\n\ninterface LinkTokenInterface {\n\n  function allowance(\n    address owner,\n    address spender\n  )\n    external\n    view\n    returns (\n      uint256 remaining\n    );\n\n  function approve(\n    address spender,\n    uint256 value\n  )\n    external\n    returns (\n      bool success\n    );\n\n  function balanceOf(\n    address owner\n  )\n    external\n    view\n    returns (\n      uint256 balance\n    );\n\n  function decimals()\n    external\n    view\n    returns (\n      uint8 decimalPlaces\n    );\n\n  function decreaseApproval(\n    address spender,\n    uint256 addedValue\n  )\n    external\n    returns (\n      bool success\n    );\n\n  function increaseApproval(\n    address spender,\n    uint256 subtractedValue\n  ) external;\n\n  function name()\n    external\n    view\n    returns (\n      string memory tokenName\n    );\n\n  function symbol()\n    external\n    view\n    returns (\n      string memory tokenSymbol\n    );\n\n  function totalSupply()\n    external\n    view\n    returns (\n      uint256 totalTokensIssued\n    );\n\n  function transfer(\n    address to,\n    uint256 value\n  )\n    external\n    returns (\n      bool success\n    );\n\n  function transferAndCall(\n    address to,\n    uint256 value,\n    bytes calldata data\n  )\n    external\n    returns (\n      bool success\n    );\n\n  function transferFrom(\n    address from,\n    address to,\n    uint256 value\n  )\n    external\n    returns (\n      bool success\n    );\n\n}\n",
  "sourceMap": "",
  "sourcePath": "node_modules/@chainlink/contracts/src/v0.8/interfaces/LinkTokenInterface.sol",
  "type": "interface"
}