{
  "contractName": "IERC1155",
  "abi": [
    {
      "constant": true,
      "inputs": [
        {
          "name": "interfaceId",
          "type": "bytes4"
        }
      ],
      "name": "supportsInterface",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "operator",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "from",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "to",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "id",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "TransferSingle",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "operator",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "from",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "to",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "ids",
          "type": "uint256[]"
        },
        {
          "indexed": false,
          "name": "values",
          "type": "uint256[]"
        }
      ],
      "name": "TransferBatch",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "owner",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "operator",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "approved",
          "type": "bool"
        }
      ],
      "name": "ApprovalForAll",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "value",
          "type": "string"
        },
        {
          "indexed": true,
          "name": "id",
          "type": "uint256"
        }
      ],
      "name": "URI",
      "type": "event"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "owner",
          "type": "address"
        },
        {
          "name": "id",
          "type": "uint256"
        }
      ],
      "name": "balanceOf",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "owners",
          "type": "address[]"
        },
        {
          "name": "ids",
          "type": "uint256[]"
        }
      ],
      "name": "balanceOfBatch",
      "outputs": [
        {
          "name": "",
          "type": "uint256[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "operator",
          "type": "address"
        },
        {
          "name": "approved",
          "type": "bool"
        }
      ],
      "name": "setApprovalForAll",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "owner",
          "type": "address"
        },
        {
          "name": "operator",
          "type": "address"
        }
      ],
      "name": "isApprovedForAll",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "from",
          "type": "address"
        },
        {
          "name": "to",
          "type": "address"
        },
        {
          "name": "id",
          "type": "uint256"
        },
        {
          "name": "value",
          "type": "uint256"
        },
        {
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "safeTransferFrom",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "from",
          "type": "address"
        },
        {
          "name": "to",
          "type": "address"
        },
        {
          "name": "ids",
          "type": "uint256[]"
        },
        {
          "name": "values",
          "type": "uint256[]"
        },
        {
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "safeBatchTransferFrom",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x",
  "deployedBytecode": "0x",
  "sourceMap": "",
  "deployedSourceMap": "",
  "source": "pragma solidity ^0.5.0;\n\nimport \"openzeppelin-solidity/contracts/introspection/IERC165.sol\";\n\n/**\n    @title ERC-1155 Multi Token Standard basic interface\n    @dev See https://eips.ethereum.org/EIPS/eip-1155\n */\ncontract IERC1155 is IERC165 {\n    event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value);\n\n    event TransferBatch(address indexed operator, address indexed from, address indexed to, uint256[] ids, uint256[] values);\n\n    event ApprovalForAll(address indexed owner, address indexed operator, bool approved);\n\n    event URI(string value, uint256 indexed id);\n\n    function balanceOf(address owner, uint256 id) public view returns (uint256);\n\n    function balanceOfBatch(address[] memory owners, uint256[] memory ids) public view returns (uint256[] memory);\n\n    function setApprovalForAll(address operator, bool approved) external;\n\n    function isApprovedForAll(address owner, address operator) external view returns (bool);\n\n    function safeTransferFrom(address from, address to, uint256 id, uint256 value, bytes calldata data) external;\n\n    function safeBatchTransferFrom(address from, address to, uint256[] calldata ids, uint256[] calldata values, bytes calldata data) external;\n}\n",
  "sourcePath": "/home/alan/src/github.com/gnosis/hg-contracts/contracts/ERC1155/IERC1155.sol",
  "ast": {
    "absolutePath": "/home/alan/src/github.com/gnosis/hg-contracts/contracts/ERC1155/IERC1155.sol",
    "exportedSymbols": {
      "IERC1155": [
        740
      ]
    },
    "id": 741,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 631,
        "literals": [
          "solidity",
          "^",
          "0.5",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:23:2"
      },
      {
        "absolutePath": "openzeppelin-solidity/contracts/introspection/IERC165.sol",
        "file": "openzeppelin-solidity/contracts/introspection/IERC165.sol",
        "id": 632,
        "nodeType": "ImportDirective",
        "scope": 741,
        "sourceUnit": 2560,
        "src": "25:67:2",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 633,
              "name": "IERC165",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 2559,
              "src": "233:7:2",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_IERC165_$2559",
                "typeString": "contract IERC165"
              }
            },
            "id": 634,
            "nodeType": "InheritanceSpecifier",
            "src": "233:7:2"
          }
        ],
        "contractDependencies": [
          2559
        ],
        "contractKind": "contract",
        "documentation": "@title ERC-1155 Multi Token Standard basic interface\n@dev See https://eips.ethereum.org/EIPS/eip-1155",
        "fullyImplemented": false,
        "id": 740,
        "linearizedBaseContracts": [
          740,
          2559
        ],
        "name": "IERC1155",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "anonymous": false,
            "documentation": null,
            "id": 646,
            "name": "TransferSingle",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 645,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 636,
                  "indexed": true,
                  "name": "operator",
                  "nodeType": "VariableDeclaration",
                  "scope": 646,
                  "src": "268:24:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 635,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "268:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 638,
                  "indexed": true,
                  "name": "from",
                  "nodeType": "VariableDeclaration",
                  "scope": 646,
                  "src": "294:20:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 637,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "294:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 640,
                  "indexed": true,
                  "name": "to",
                  "nodeType": "VariableDeclaration",
                  "scope": 646,
                  "src": "316:18:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 639,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "316:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 642,
                  "indexed": false,
                  "name": "id",
                  "nodeType": "VariableDeclaration",
                  "scope": 646,
                  "src": "336:10:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 641,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "336:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 644,
                  "indexed": false,
                  "name": "value",
                  "nodeType": "VariableDeclaration",
                  "scope": 646,
                  "src": "348:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 643,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "348:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "267:95:2"
            },
            "src": "247:116:2"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 660,
            "name": "TransferBatch",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 659,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 648,
                  "indexed": true,
                  "name": "operator",
                  "nodeType": "VariableDeclaration",
                  "scope": 660,
                  "src": "389:24:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 647,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "389:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 650,
                  "indexed": true,
                  "name": "from",
                  "nodeType": "VariableDeclaration",
                  "scope": 660,
                  "src": "415:20:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 649,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "415:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 652,
                  "indexed": true,
                  "name": "to",
                  "nodeType": "VariableDeclaration",
                  "scope": 660,
                  "src": "437:18:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 651,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "437:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 655,
                  "indexed": false,
                  "name": "ids",
                  "nodeType": "VariableDeclaration",
                  "scope": 660,
                  "src": "457:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 653,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "457:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 654,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "457:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 658,
                  "indexed": false,
                  "name": "values",
                  "nodeType": "VariableDeclaration",
                  "scope": 660,
                  "src": "472:16:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 656,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "472:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 657,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "472:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "388:101:2"
            },
            "src": "369:121:2"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 668,
            "name": "ApprovalForAll",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 667,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 662,
                  "indexed": true,
                  "name": "owner",
                  "nodeType": "VariableDeclaration",
                  "scope": 668,
                  "src": "517:21:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 661,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "517:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 664,
                  "indexed": true,
                  "name": "operator",
                  "nodeType": "VariableDeclaration",
                  "scope": 668,
                  "src": "540:24:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 663,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "540:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 666,
                  "indexed": false,
                  "name": "approved",
                  "nodeType": "VariableDeclaration",
                  "scope": 668,
                  "src": "566:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 665,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "566:4:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "516:64:2"
            },
            "src": "496:85:2"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 674,
            "name": "URI",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 673,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 670,
                  "indexed": false,
                  "name": "value",
                  "nodeType": "VariableDeclaration",
                  "scope": 674,
                  "src": "597:12:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 669,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "597:6:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 672,
                  "indexed": true,
                  "name": "id",
                  "nodeType": "VariableDeclaration",
                  "scope": 674,
                  "src": "611:18:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 671,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "611:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "596:34:2"
            },
            "src": "587:44:2"
          },
          {
            "body": null,
            "documentation": null,
            "id": 683,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "balanceOf",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 679,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 676,
                  "name": "owner",
                  "nodeType": "VariableDeclaration",
                  "scope": 683,
                  "src": "656:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 675,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "656:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 678,
                  "name": "id",
                  "nodeType": "VariableDeclaration",
                  "scope": 683,
                  "src": "671:10:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 677,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "671:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "655:27:2"
            },
            "returnParameters": {
              "id": 682,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 681,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 683,
                  "src": "704:7:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 680,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "704:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "703:9:2"
            },
            "scope": 740,
            "src": "637:76:2",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": null,
            "documentation": null,
            "id": 695,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "balanceOfBatch",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 690,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 686,
                  "name": "owners",
                  "nodeType": "VariableDeclaration",
                  "scope": 695,
                  "src": "743:23:2",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 684,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "743:7:2",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 685,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "743:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 689,
                  "name": "ids",
                  "nodeType": "VariableDeclaration",
                  "scope": 695,
                  "src": "768:20:2",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 687,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "768:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 688,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "768:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "742:47:2"
            },
            "returnParameters": {
              "id": 694,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 693,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 695,
                  "src": "811:16:2",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 691,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "811:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 692,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "811:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "810:18:2"
            },
            "scope": 740,
            "src": "719:110:2",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": null,
            "documentation": null,
            "id": 702,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setApprovalForAll",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 700,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 697,
                  "name": "operator",
                  "nodeType": "VariableDeclaration",
                  "scope": 702,
                  "src": "862:16:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 696,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "862:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 699,
                  "name": "approved",
                  "nodeType": "VariableDeclaration",
                  "scope": 702,
                  "src": "880:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 698,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "880:4:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "861:33:2"
            },
            "returnParameters": {
              "id": 701,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "903:0:2"
            },
            "scope": 740,
            "src": "835:69:2",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "id": 711,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "isApprovedForAll",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 707,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 704,
                  "name": "owner",
                  "nodeType": "VariableDeclaration",
                  "scope": 711,
                  "src": "936:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 703,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "936:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 706,
                  "name": "operator",
                  "nodeType": "VariableDeclaration",
                  "scope": 711,
                  "src": "951:16:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 705,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "951:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "935:33:2"
            },
            "returnParameters": {
              "id": 710,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 709,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 711,
                  "src": "992:4:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 708,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "992:4:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "991:6:2"
            },
            "scope": 740,
            "src": "910:88:2",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "id": 724,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "safeTransferFrom",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 722,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 713,
                  "name": "from",
                  "nodeType": "VariableDeclaration",
                  "scope": 724,
                  "src": "1030:12:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 712,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1030:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 715,
                  "name": "to",
                  "nodeType": "VariableDeclaration",
                  "scope": 724,
                  "src": "1044:10:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 714,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1044:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 717,
                  "name": "id",
                  "nodeType": "VariableDeclaration",
                  "scope": 724,
                  "src": "1056:10:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 716,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1056:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 719,
                  "name": "value",
                  "nodeType": "VariableDeclaration",
                  "scope": 724,
                  "src": "1068:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 718,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1068:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 721,
                  "name": "data",
                  "nodeType": "VariableDeclaration",
                  "scope": 724,
                  "src": "1083:19:2",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 720,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1083:5:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1029:74:2"
            },
            "returnParameters": {
              "id": 723,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1112:0:2"
            },
            "scope": 740,
            "src": "1004:109:2",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "id": 739,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "safeBatchTransferFrom",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 737,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 726,
                  "name": "from",
                  "nodeType": "VariableDeclaration",
                  "scope": 739,
                  "src": "1150:12:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 725,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1150:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 728,
                  "name": "to",
                  "nodeType": "VariableDeclaration",
                  "scope": 739,
                  "src": "1164:10:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 727,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1164:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 731,
                  "name": "ids",
                  "nodeType": "VariableDeclaration",
                  "scope": 739,
                  "src": "1176:22:2",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 729,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "1176:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 730,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1176:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 734,
                  "name": "values",
                  "nodeType": "VariableDeclaration",
                  "scope": 739,
                  "src": "1200:25:2",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 732,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "1200:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 733,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1200:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 736,
                  "name": "data",
                  "nodeType": "VariableDeclaration",
                  "scope": 739,
                  "src": "1227:19:2",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 735,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1227:5:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1149:98:2"
            },
            "returnParameters": {
              "id": 738,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1256:0:2"
            },
            "scope": 740,
            "src": "1119:138:2",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "external"
          }
        ],
        "scope": 741,
        "src": "212:1047:2"
      }
    ],
    "src": "0:1260:2"
  },
  "legacyAST": {
    "absolutePath": "/home/alan/src/github.com/gnosis/hg-contracts/contracts/ERC1155/IERC1155.sol",
    "exportedSymbols": {
      "IERC1155": [
        740
      ]
    },
    "id": 741,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 631,
        "literals": [
          "solidity",
          "^",
          "0.5",
          ".0"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:23:2"
      },
      {
        "absolutePath": "openzeppelin-solidity/contracts/introspection/IERC165.sol",
        "file": "openzeppelin-solidity/contracts/introspection/IERC165.sol",
        "id": 632,
        "nodeType": "ImportDirective",
        "scope": 741,
        "sourceUnit": 2560,
        "src": "25:67:2",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 633,
              "name": "IERC165",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 2559,
              "src": "233:7:2",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_IERC165_$2559",
                "typeString": "contract IERC165"
              }
            },
            "id": 634,
            "nodeType": "InheritanceSpecifier",
            "src": "233:7:2"
          }
        ],
        "contractDependencies": [
          2559
        ],
        "contractKind": "contract",
        "documentation": "@title ERC-1155 Multi Token Standard basic interface\n@dev See https://eips.ethereum.org/EIPS/eip-1155",
        "fullyImplemented": false,
        "id": 740,
        "linearizedBaseContracts": [
          740,
          2559
        ],
        "name": "IERC1155",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "anonymous": false,
            "documentation": null,
            "id": 646,
            "name": "TransferSingle",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 645,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 636,
                  "indexed": true,
                  "name": "operator",
                  "nodeType": "VariableDeclaration",
                  "scope": 646,
                  "src": "268:24:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 635,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "268:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 638,
                  "indexed": true,
                  "name": "from",
                  "nodeType": "VariableDeclaration",
                  "scope": 646,
                  "src": "294:20:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 637,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "294:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 640,
                  "indexed": true,
                  "name": "to",
                  "nodeType": "VariableDeclaration",
                  "scope": 646,
                  "src": "316:18:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 639,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "316:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 642,
                  "indexed": false,
                  "name": "id",
                  "nodeType": "VariableDeclaration",
                  "scope": 646,
                  "src": "336:10:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 641,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "336:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 644,
                  "indexed": false,
                  "name": "value",
                  "nodeType": "VariableDeclaration",
                  "scope": 646,
                  "src": "348:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 643,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "348:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "267:95:2"
            },
            "src": "247:116:2"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 660,
            "name": "TransferBatch",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 659,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 648,
                  "indexed": true,
                  "name": "operator",
                  "nodeType": "VariableDeclaration",
                  "scope": 660,
                  "src": "389:24:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 647,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "389:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 650,
                  "indexed": true,
                  "name": "from",
                  "nodeType": "VariableDeclaration",
                  "scope": 660,
                  "src": "415:20:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 649,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "415:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 652,
                  "indexed": true,
                  "name": "to",
                  "nodeType": "VariableDeclaration",
                  "scope": 660,
                  "src": "437:18:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 651,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "437:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 655,
                  "indexed": false,
                  "name": "ids",
                  "nodeType": "VariableDeclaration",
                  "scope": 660,
                  "src": "457:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 653,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "457:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 654,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "457:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 658,
                  "indexed": false,
                  "name": "values",
                  "nodeType": "VariableDeclaration",
                  "scope": 660,
                  "src": "472:16:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 656,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "472:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 657,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "472:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "388:101:2"
            },
            "src": "369:121:2"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 668,
            "name": "ApprovalForAll",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 667,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 662,
                  "indexed": true,
                  "name": "owner",
                  "nodeType": "VariableDeclaration",
                  "scope": 668,
                  "src": "517:21:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 661,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "517:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 664,
                  "indexed": true,
                  "name": "operator",
                  "nodeType": "VariableDeclaration",
                  "scope": 668,
                  "src": "540:24:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 663,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "540:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 666,
                  "indexed": false,
                  "name": "approved",
                  "nodeType": "VariableDeclaration",
                  "scope": 668,
                  "src": "566:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 665,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "566:4:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "516:64:2"
            },
            "src": "496:85:2"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 674,
            "name": "URI",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 673,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 670,
                  "indexed": false,
                  "name": "value",
                  "nodeType": "VariableDeclaration",
                  "scope": 674,
                  "src": "597:12:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 669,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "597:6:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 672,
                  "indexed": true,
                  "name": "id",
                  "nodeType": "VariableDeclaration",
                  "scope": 674,
                  "src": "611:18:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 671,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "611:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "596:34:2"
            },
            "src": "587:44:2"
          },
          {
            "body": null,
            "documentation": null,
            "id": 683,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "balanceOf",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 679,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 676,
                  "name": "owner",
                  "nodeType": "VariableDeclaration",
                  "scope": 683,
                  "src": "656:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 675,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "656:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 678,
                  "name": "id",
                  "nodeType": "VariableDeclaration",
                  "scope": 683,
                  "src": "671:10:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 677,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "671:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "655:27:2"
            },
            "returnParameters": {
              "id": 682,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 681,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 683,
                  "src": "704:7:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 680,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "704:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "703:9:2"
            },
            "scope": 740,
            "src": "637:76:2",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": null,
            "documentation": null,
            "id": 695,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "balanceOfBatch",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 690,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 686,
                  "name": "owners",
                  "nodeType": "VariableDeclaration",
                  "scope": 695,
                  "src": "743:23:2",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 684,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "743:7:2",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 685,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "743:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 689,
                  "name": "ids",
                  "nodeType": "VariableDeclaration",
                  "scope": 695,
                  "src": "768:20:2",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 687,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "768:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 688,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "768:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "742:47:2"
            },
            "returnParameters": {
              "id": 694,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 693,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 695,
                  "src": "811:16:2",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 691,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "811:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 692,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "811:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "810:18:2"
            },
            "scope": 740,
            "src": "719:110:2",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": null,
            "documentation": null,
            "id": 702,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "setApprovalForAll",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 700,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 697,
                  "name": "operator",
                  "nodeType": "VariableDeclaration",
                  "scope": 702,
                  "src": "862:16:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 696,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "862:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 699,
                  "name": "approved",
                  "nodeType": "VariableDeclaration",
                  "scope": 702,
                  "src": "880:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 698,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "880:4:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "861:33:2"
            },
            "returnParameters": {
              "id": 701,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "903:0:2"
            },
            "scope": 740,
            "src": "835:69:2",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "id": 711,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "isApprovedForAll",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 707,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 704,
                  "name": "owner",
                  "nodeType": "VariableDeclaration",
                  "scope": 711,
                  "src": "936:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 703,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "936:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 706,
                  "name": "operator",
                  "nodeType": "VariableDeclaration",
                  "scope": 711,
                  "src": "951:16:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 705,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "951:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "935:33:2"
            },
            "returnParameters": {
              "id": 710,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 709,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 711,
                  "src": "992:4:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 708,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "992:4:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "991:6:2"
            },
            "scope": 740,
            "src": "910:88:2",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "id": 724,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "safeTransferFrom",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 722,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 713,
                  "name": "from",
                  "nodeType": "VariableDeclaration",
                  "scope": 724,
                  "src": "1030:12:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 712,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1030:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 715,
                  "name": "to",
                  "nodeType": "VariableDeclaration",
                  "scope": 724,
                  "src": "1044:10:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 714,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1044:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 717,
                  "name": "id",
                  "nodeType": "VariableDeclaration",
                  "scope": 724,
                  "src": "1056:10:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 716,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1056:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 719,
                  "name": "value",
                  "nodeType": "VariableDeclaration",
                  "scope": 724,
                  "src": "1068:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 718,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1068:7:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 721,
                  "name": "data",
                  "nodeType": "VariableDeclaration",
                  "scope": 724,
                  "src": "1083:19:2",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 720,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1083:5:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1029:74:2"
            },
            "returnParameters": {
              "id": 723,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1112:0:2"
            },
            "scope": 740,
            "src": "1004:109:2",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "external"
          },
          {
            "body": null,
            "documentation": null,
            "id": 739,
            "implemented": false,
            "kind": "function",
            "modifiers": [],
            "name": "safeBatchTransferFrom",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 737,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 726,
                  "name": "from",
                  "nodeType": "VariableDeclaration",
                  "scope": 739,
                  "src": "1150:12:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 725,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1150:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 728,
                  "name": "to",
                  "nodeType": "VariableDeclaration",
                  "scope": 739,
                  "src": "1164:10:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 727,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1164:7:2",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 731,
                  "name": "ids",
                  "nodeType": "VariableDeclaration",
                  "scope": 739,
                  "src": "1176:22:2",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 729,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "1176:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 730,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1176:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 734,
                  "name": "values",
                  "nodeType": "VariableDeclaration",
                  "scope": 739,
                  "src": "1200:25:2",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_calldata_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 732,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "1200:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 733,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1200:9:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 736,
                  "name": "data",
                  "nodeType": "VariableDeclaration",
                  "scope": 739,
                  "src": "1227:19:2",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes_calldata_ptr",
                    "typeString": "bytes"
                  },
                  "typeName": {
                    "id": 735,
                    "name": "bytes",
                    "nodeType": "ElementaryTypeName",
                    "src": "1227:5:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes_storage_ptr",
                      "typeString": "bytes"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1149:98:2"
            },
            "returnParameters": {
              "id": 738,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1256:0:2"
            },
            "scope": 740,
            "src": "1119:138:2",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "external"
          }
        ],
        "scope": 741,
        "src": "212:1047:2"
      }
    ],
    "src": "0:1260:2"
  },
  "compiler": {
    "name": "solc",
    "version": "0.5.1+commit.c8a2cb62.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.0.3",
  "updatedAt": "2019-06-08T17:32:19.209Z",
  "devdoc": {
    "details": "See https://eips.ethereum.org/EIPS/eip-1155",
    "methods": {
      "supportsInterface(bytes4)": {
        "details": "Returns true if this contract implements the interface defined by `interfaceId`. See the corresponding [EIP section](https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified) to learn more about how these ids are created.     * This function call must use less than 30 000 gas."
      }
    },
    "title": "ERC-1155 Multi Token Standard basic interface"
  },
  "userdoc": {
    "methods": {}
  }
}