{
  "id": "406c690618465ba83203ebc57efd516c",
  "_format": "hh-sol-build-info-1",
  "solcVersion": "0.6.10",
  "solcLongVersion": "0.6.10+commit.00c0fcaf",
  "input": {
    "language": "Solidity",
    "sources": {
      "contracts/mocks/protocol/integration/AaveLendingPoolCoreMock.sol": {
        "content": "/*\n    Copyright 2020 Set Labs Inc.\n\n    Licensed under the Apache License, Version 2.0 (the \"License\");\n    you may not use this file except in compliance with the License.\n    You may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\n    Unless required by applicable law or agreed to in writing, software\n    distributed under the License is distributed on an \"AS IS\" BASIS,\n    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n    See the License for the specific language governing permissions and\n    limitations under the License.\n\n    SPDX-License-Identifier: Apache License, Version 2.0\n*/\n\npragma solidity 0.6.10;\n\ncontract AaveLendingPoolCoreMock {\n\n    mapping(address => address) public reserves;\n\n    function getReserveATokenAddress(address _reserve) public view returns (address) {\n        return reserves[_reserve];\n    }\n\n    function setReserveATokenAddress(address _reserve, address _aToken) public {\n        reserves[_reserve] = _aToken;\n    }\n}\n"
      }
    },
    "settings": {
      "optimizer": {
        "enabled": true,
        "runs": 200
      },
      "outputSelection": {
        "*": {
          "*": [
            "abi",
            "evm.bytecode",
            "evm.deployedBytecode",
            "evm.methodIdentifiers"
          ],
          "": [
            "ast"
          ]
        }
      }
    }
  },
  "output": {
    "contracts": {
      "contracts/mocks/protocol/integration/AaveLendingPoolCoreMock.sol": {
        "AaveLendingPoolCoreMock": {
          "abi": [
            {
              "inputs": [
                {
                  "internalType": "address",
                  "name": "_reserve",
                  "type": "address"
                }
              ],
              "name": "getReserveATokenAddress",
              "outputs": [
                {
                  "internalType": "address",
                  "name": "",
                  "type": "address"
                }
              ],
              "stateMutability": "view",
              "type": "function"
            },
            {
              "inputs": [
                {
                  "internalType": "address",
                  "name": "",
                  "type": "address"
                }
              ],
              "name": "reserves",
              "outputs": [
                {
                  "internalType": "address",
                  "name": "",
                  "type": "address"
                }
              ],
              "stateMutability": "view",
              "type": "function"
            },
            {
              "inputs": [
                {
                  "internalType": "address",
                  "name": "_reserve",
                  "type": "address"
                },
                {
                  "internalType": "address",
                  "name": "_aToken",
                  "type": "address"
                }
              ],
              "name": "setReserveATokenAddress",
              "outputs": [],
              "stateMutability": "nonpayable",
              "type": "function"
            }
          ],
          "evm": {
            "bytecode": {
              "linkReferences": {},
              "object": "608060405234801561001057600080fd5b5061017b806100206000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806334b3beee14610046578063923bdd6314610088578063d66bd524146100b8575b600080fd5b61006c6004803603602081101561005c57600080fd5b50356001600160a01b03166100de565b604080516001600160a01b039092168252519081900360200190f35b6100b66004803603604081101561009e57600080fd5b506001600160a01b03813581169160200135166100fc565b005b61006c600480360360208110156100ce57600080fd5b50356001600160a01b031661012a565b6001600160a01b039081166000908152602081905260409020541690565b6001600160a01b03918216600090815260208190526040902080546001600160a01b03191691909216179055565b6000602081905290815260409020546001600160a01b03168156fea2646970667358221220c6463a4246fe2195ff4ed50016dcb752a39e3a740acbecb682a1f69b5a3f6b4a64736f6c634300060a0033",
              "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x17B DUP1 PUSH2 0x20 PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x34B3BEEE EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x923BDD63 EQ PUSH2 0x88 JUMPI DUP1 PUSH4 0xD66BD524 EQ PUSH2 0xB8 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6C PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x5C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH2 0xDE JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST PUSH2 0xB6 PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x40 DUP2 LT ISZERO PUSH2 0x9E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 CALLDATALOAD DUP2 AND SWAP2 PUSH1 0x20 ADD CALLDATALOAD AND PUSH2 0xFC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6C PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0xCE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH2 0x12A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD AND SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP2 SWAP1 SWAP3 AND OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP2 SWAP1 MSTORE SWAP1 DUP2 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC6 CHAINID GASPRICE TIMESTAMP CHAINID INVALID 0x21 SWAP6 SELFDESTRUCT 0x4E 0xD5 STOP AND 0xDC 0xB7 MSTORE LOG3 SWAP15 GASPRICE PUSH21 0xACBECB682A1F69B5A3F6B4A64736F6C634300060A STOP CALLER ",
              "sourceMap": "680:341:0:-:0;;;;;;;;;;;;;;;;;;;"
            },
            "deployedBytecode": {
              "immutableReferences": {},
              "linkReferences": {},
              "object": "608060405234801561001057600080fd5b50600436106100415760003560e01c806334b3beee14610046578063923bdd6314610088578063d66bd524146100b8575b600080fd5b61006c6004803603602081101561005c57600080fd5b50356001600160a01b03166100de565b604080516001600160a01b039092168252519081900360200190f35b6100b66004803603604081101561009e57600080fd5b506001600160a01b03813581169160200135166100fc565b005b61006c600480360360208110156100ce57600080fd5b50356001600160a01b031661012a565b6001600160a01b039081166000908152602081905260409020541690565b6001600160a01b03918216600090815260208190526040902080546001600160a01b03191691909216179055565b6000602081905290815260409020546001600160a01b03168156fea2646970667358221220c6463a4246fe2195ff4ed50016dcb752a39e3a740acbecb682a1f69b5a3f6b4a64736f6c634300060a0033",
              "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x41 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x34B3BEEE EQ PUSH2 0x46 JUMPI DUP1 PUSH4 0x923BDD63 EQ PUSH2 0x88 JUMPI DUP1 PUSH4 0xD66BD524 EQ PUSH2 0xB8 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x6C PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x5C JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH2 0xDE JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST PUSH2 0xB6 PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x40 DUP2 LT ISZERO PUSH2 0x9E JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 CALLDATALOAD DUP2 AND SWAP2 PUSH1 0x20 ADD CALLDATALOAD AND PUSH2 0xFC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6C PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0xCE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH2 0x12A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD AND SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP2 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP2 SWAP1 SWAP3 AND OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP2 SWAP1 MSTORE SWAP1 DUP2 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xC6 CHAINID GASPRICE TIMESTAMP CHAINID INVALID 0x21 SWAP6 SELFDESTRUCT 0x4E 0xD5 STOP AND 0xDC 0xB7 MSTORE LOG3 SWAP15 GASPRICE PUSH21 0xACBECB682A1F69B5A3F6B4A64736F6C634300060A STOP CALLER ",
              "sourceMap": "680:341:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;770:123;;;;;;;;;;;;;;;;-1:-1:-1;770:123:0;-1:-1:-1;;;;;770:123:0;;:::i;:::-;;;;-1:-1:-1;;;;;770:123:0;;;;;;;;;;;;;;899:120;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;899:120:0;;;;;;;;;;:::i;:::-;;720:43;;;;;;;;;;;;;;;;-1:-1:-1;720:43:0;-1:-1:-1;;;;;720:43:0;;:::i;770:123::-;-1:-1:-1;;;;;868:18:0;;;842:7;868:18;;;;;;;;;;;;;770:123::o;899:120::-;-1:-1:-1;;;;;984:18:0;;;:8;:18;;;;;;;;;;:28;;-1:-1:-1;;;;;;984:28:0;;;;;;;;899:120::o;720:43::-;;;;;;;;;;;;;-1:-1:-1;;;;;720:43:0;;:::o"
            },
            "methodIdentifiers": {
              "getReserveATokenAddress(address)": "34b3beee",
              "reserves(address)": "d66bd524",
              "setReserveATokenAddress(address,address)": "923bdd63"
            }
          }
        }
      }
    },
    "sources": {
      "contracts/mocks/protocol/integration/AaveLendingPoolCoreMock.sol": {
        "ast": {
          "absolutePath": "contracts/mocks/protocol/integration/AaveLendingPoolCoreMock.sol",
          "exportedSymbols": {
            "AaveLendingPoolCoreMock": [
              32
            ]
          },
          "id": 33,
          "license": "Apache License",
          "nodeType": "SourceUnit",
          "nodes": [
            {
              "id": 1,
              "literals": [
                "solidity",
                "0.6",
                ".10"
              ],
              "nodeType": "PragmaDirective",
              "src": "655:23:0"
            },
            {
              "abstract": false,
              "baseContracts": [],
              "contractDependencies": [],
              "contractKind": "contract",
              "documentation": null,
              "fullyImplemented": true,
              "id": 32,
              "linearizedBaseContracts": [
                32
              ],
              "name": "AaveLendingPoolCoreMock",
              "nodeType": "ContractDefinition",
              "nodes": [
                {
                  "constant": false,
                  "functionSelector": "d66bd524",
                  "id": 5,
                  "mutability": "mutable",
                  "name": "reserves",
                  "nodeType": "VariableDeclaration",
                  "overrides": null,
                  "scope": 32,
                  "src": "720:43:0",
                  "stateVariable": true,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_mapping$_t_address_$_t_address_$",
                    "typeString": "mapping(address => address)"
                  },
                  "typeName": {
                    "id": 4,
                    "keyType": {
                      "id": 2,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "728:7:0",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Mapping",
                    "src": "720:27:0",
                    "typeDescriptions": {
                      "typeIdentifier": "t_mapping$_t_address_$_t_address_$",
                      "typeString": "mapping(address => address)"
                    },
                    "valueType": {
                      "id": 3,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "739:7:0",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    }
                  },
                  "value": null,
                  "visibility": "public"
                },
                {
                  "body": {
                    "id": 16,
                    "nodeType": "Block",
                    "src": "851:42:0",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "baseExpression": {
                            "argumentTypes": null,
                            "id": 12,
                            "name": "reserves",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 5,
                            "src": "868:8:0",
                            "typeDescriptions": {
                              "typeIdentifier": "t_mapping$_t_address_$_t_address_$",
                              "typeString": "mapping(address => address)"
                            }
                          },
                          "id": 14,
                          "indexExpression": {
                            "argumentTypes": null,
                            "id": 13,
                            "name": "_reserve",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 7,
                            "src": "877:8:0",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "IndexAccess",
                          "src": "868:18:0",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "functionReturnParameters": 11,
                        "id": 15,
                        "nodeType": "Return",
                        "src": "861:25:0"
                      }
                    ]
                  },
                  "documentation": null,
                  "functionSelector": "34b3beee",
                  "id": 17,
                  "implemented": true,
                  "kind": "function",
                  "modifiers": [],
                  "name": "getReserveATokenAddress",
                  "nodeType": "FunctionDefinition",
                  "overrides": null,
                  "parameters": {
                    "id": 8,
                    "nodeType": "ParameterList",
                    "parameters": [
                      {
                        "constant": false,
                        "id": 7,
                        "mutability": "mutable",
                        "name": "_reserve",
                        "nodeType": "VariableDeclaration",
                        "overrides": null,
                        "scope": 17,
                        "src": "803:16:0",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "typeName": {
                          "id": 6,
                          "name": "address",
                          "nodeType": "ElementaryTypeName",
                          "src": "803:7:0",
                          "stateMutability": "nonpayable",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "value": null,
                        "visibility": "internal"
                      }
                    ],
                    "src": "802:18:0"
                  },
                  "returnParameters": {
                    "id": 11,
                    "nodeType": "ParameterList",
                    "parameters": [
                      {
                        "constant": false,
                        "id": 10,
                        "mutability": "mutable",
                        "name": "",
                        "nodeType": "VariableDeclaration",
                        "overrides": null,
                        "scope": 17,
                        "src": "842:7:0",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "typeName": {
                          "id": 9,
                          "name": "address",
                          "nodeType": "ElementaryTypeName",
                          "src": "842:7:0",
                          "stateMutability": "nonpayable",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "value": null,
                        "visibility": "internal"
                      }
                    ],
                    "src": "841:9:0"
                  },
                  "scope": 32,
                  "src": "770:123:0",
                  "stateMutability": "view",
                  "virtual": false,
                  "visibility": "public"
                },
                {
                  "body": {
                    "id": 30,
                    "nodeType": "Block",
                    "src": "974:45:0",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 28,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 24,
                              "name": "reserves",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 5,
                              "src": "984:8:0",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_address_$_t_address_$",
                                "typeString": "mapping(address => address)"
                              }
                            },
                            "id": 26,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 25,
                              "name": "_reserve",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 19,
                              "src": "993:8:0",
                              "typeDescriptions": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "nodeType": "IndexAccess",
                            "src": "984:18:0",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 27,
                            "name": "_aToken",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 21,
                            "src": "1005:7:0",
                            "typeDescriptions": {
                              "typeIdentifier": "t_address",
                              "typeString": "address"
                            }
                          },
                          "src": "984:28:0",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "id": 29,
                        "nodeType": "ExpressionStatement",
                        "src": "984:28:0"
                      }
                    ]
                  },
                  "documentation": null,
                  "functionSelector": "923bdd63",
                  "id": 31,
                  "implemented": true,
                  "kind": "function",
                  "modifiers": [],
                  "name": "setReserveATokenAddress",
                  "nodeType": "FunctionDefinition",
                  "overrides": null,
                  "parameters": {
                    "id": 22,
                    "nodeType": "ParameterList",
                    "parameters": [
                      {
                        "constant": false,
                        "id": 19,
                        "mutability": "mutable",
                        "name": "_reserve",
                        "nodeType": "VariableDeclaration",
                        "overrides": null,
                        "scope": 31,
                        "src": "932:16:0",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "typeName": {
                          "id": 18,
                          "name": "address",
                          "nodeType": "ElementaryTypeName",
                          "src": "932:7:0",
                          "stateMutability": "nonpayable",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "value": null,
                        "visibility": "internal"
                      },
                      {
                        "constant": false,
                        "id": 21,
                        "mutability": "mutable",
                        "name": "_aToken",
                        "nodeType": "VariableDeclaration",
                        "overrides": null,
                        "scope": 31,
                        "src": "950:15:0",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        "typeName": {
                          "id": 20,
                          "name": "address",
                          "nodeType": "ElementaryTypeName",
                          "src": "950:7:0",
                          "stateMutability": "nonpayable",
                          "typeDescriptions": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          }
                        },
                        "value": null,
                        "visibility": "internal"
                      }
                    ],
                    "src": "931:35:0"
                  },
                  "returnParameters": {
                    "id": 23,
                    "nodeType": "ParameterList",
                    "parameters": [],
                    "src": "974:0:0"
                  },
                  "scope": 32,
                  "src": "899:120:0",
                  "stateMutability": "nonpayable",
                  "virtual": false,
                  "visibility": "public"
                }
              ],
              "scope": 33,
              "src": "680:341:0"
            }
          ],
          "src": "655:367:0"
        },
        "id": 0
      }
    }
  }
}
