{
  "contractName": "DummyContract",
  "abi": [
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "array",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [],
      "name": "renounceOwnership",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "isOwner",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "wellKnown",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "name": "_secret",
          "type": "uint256"
        },
        {
          "name": "_wellKnown",
          "type": "uint256"
        },
        {
          "name": "_array",
          "type": "uint256[10]"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "newValue",
          "type": "uint256"
        },
        {
          "indexed": true,
          "name": "contractAddress",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "sender",
          "type": "address"
        }
      ],
      "name": "SecretSet",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "newValue",
          "type": "uint256"
        },
        {
          "indexed": true,
          "name": "contractAddress",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "sender",
          "type": "address"
        }
      ],
      "name": "PublicSet",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "previousOwner",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferred",
      "type": "event"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getPrivate",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_newValue",
          "type": "uint256"
        }
      ],
      "name": "setPrivate",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getPublic",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_newValue",
          "type": "uint256"
        }
      ],
      "name": "setPublic",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_array",
          "type": "uint256[10]"
        }
      ],
      "name": "ArrayTypesTest",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_array",
          "type": "address[]"
        }
      ],
      "name": "funcArrayInArguments",
      "outputs": [
        {
          "name": "retArray",
          "type": "address[]"
        }
      ],
      "payable": false,
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_array",
          "type": "address[]"
        },
        {
          "name": "_array2",
          "type": "address[]"
        }
      ],
      "name": "funcArrayInArguments",
      "outputs": [
        {
          "name": "retArray",
          "type": "address[]"
        }
      ],
      "payable": false,
      "stateMutability": "pure",
      "type": "function"
    }
  ],
  "metadata": "{\"compiler\":{\"version\":\"0.5.2+commit.1df8f40c\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"name\":\"_array\",\"type\":\"address[]\"}],\"name\":\"funcArrayInArguments\",\"outputs\":[{\"name\":\"retArray\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_array\",\"type\":\"address[]\"},{\"name\":\"_array2\",\"type\":\"address[]\"}],\"name\":\"funcArrayInArguments\",\"outputs\":[{\"name\":\"retArray\",\"type\":\"address[]\"}],\"payable\":false,\"stateMutability\":\"pure\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getPublic\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_newValue\",\"type\":\"uint256\"}],\"name\":\"setPublic\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"array\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_newValue\",\"type\":\"uint256\"}],\"name\":\"setPrivate\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"isOwner\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getPrivate\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"wellKnown\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_array\",\"type\":\"uint256[10]\"}],\"name\":\"ArrayTypesTest\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"_secret\",\"type\":\"uint256\"},{\"name\":\"_wellKnown\",\"type\":\"uint256\"},{\"name\":\"_array\",\"type\":\"uint256[10]\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"newValue\",\"type\":\"uint256\"},{\"indexed\":true,\"name\":\"contractAddress\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"SecretSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"newValue\",\"type\":\"uint256\"},{\"indexed\":true,\"name\":\"contractAddress\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"sender\",\"type\":\"address\"}],\"name\":\"PublicSet\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"name\":\"previousOwner\",\"type\":\"address\"},{\"indexed\":true,\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{\"isOwner()\":{\"return\":\"true if `msg.sender` is the owner of the contract.\"},\"owner()\":{\"return\":\"the address of the owner.\"},\"renounceOwnership()\":{\"details\":\"Allows the current owner to relinquish control of the contract. It will not be possible to call the functions with the `onlyOwner` modifier anymore.\"},\"transferOwnership(address)\":{\"details\":\"Allows the current owner to transfer control of the contract to a newOwner.\",\"params\":{\"newOwner\":\"The address to transfer ownership to.\"}}}},\"userdoc\":{\"methods\":{\"renounceOwnership()\":{\"notice\":\"Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner.\"}}}},\"settings\":{\"compilationTarget\":{\"/C/MD/Dev/Soltsice/contracts/DummyContract.sol\":\"DummyContract\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/C/MD/Dev/Soltsice/contracts/DummyContract.sol\":{\"keccak256\":\"0x328b60f80f05539f864d8a94ab55c2f490611c3abcd03b131392b1d2eda67ae7\",\"urls\":[\"bzzr://e6eb1731e16fcb194e0fb5f625de04e348bd9cecdbf69589929f5ea343682170\"]},\"openzeppelin-solidity/contracts/ownership/Ownable.sol\":{\"keccak256\":\"0xcb16adc00dcf0d75e0bdf94379f4d5a6d74dca7c74e4183b94e15721159f8a30\",\"urls\":[\"bzzr://b81e03f7203cd628cfed19255911a04a05e8670d248afb48a7b067dd03b4ff55\"]}},\"version\":1}",
  "bytecode": "0x608060405234801561001057600080fd5b5060405161018080610ba0833981018060405261018081101561003257600080fd5b81019080805190602001909291908051906020019092919091905050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3826001819055508160028190555080600390600a610129929190610132565b50505050610197565b82600a8101928215610161579160200282015b82811115610160578251825591602001919060010190610145565b5b50905061016e9190610172565b5090565b61019491905b80821115610190576000816000905550600101610178565b5090565b90565b6109fa806101a66000396000f3fe608060405234801561001057600080fd5b50600436106100ec576000357c01000000000000000000000000000000000000000000000000000000009004806389cfd71b116100a95780639ad55220116100835780639ad5522014610414578063db5446a514610432578063e26f034214610450578063f2fde38b146104b7576100ec565b806389cfd71b1461037a5780638da5cb5b146103a85780638f32d59b146103f2576100ec565b80630fd2ce17146100f1578063278d6e5b146101bf5780632c044779146102e257806331845f7d1461030057806338d941931461032e578063715018a614610370575b600080fd5b6101686004803603602081101561010757600080fd5b810190808035906020019064010000000081111561012457600080fd5b82018360208201111561013657600080fd5b8035906020019184602083028401116401000000008311171561015857600080fd5b90919293919293905050506104fb565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156101ab578082015181840152602081019050610190565b505050509050019250505060405180910390f35b61028b600480360360408110156101d557600080fd5b81019080803590602001906401000000008111156101f257600080fd5b82018360208201111561020457600080fd5b8035906020019184602083028401116401000000008311171561022657600080fd5b90919293919293908035906020019064010000000081111561024757600080fd5b82018360208201111561025957600080fd5b8035906020019184602083028401116401000000008311171561027b57600080fd5b9091929391929390505050610547565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156102ce5780820151818401526020810190506102b3565b505050509050019250505060405180910390f35b6102ea610595565b6040518082815260200191505060405180910390f35b61032c6004803603602081101561031657600080fd5b81019080803590602001909291905050506105b2565b005b61035a6004803603602081101561034457600080fd5b810190808035906020019092919050505061062a565b6040518082815260200191505060405180910390f35b610378610644565b005b6103a66004803603602081101561039057600080fd5b8101908080359060200190929190505050610716565b005b6103b0610798565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103fa6107c1565b604051808215151515815260200191505060405180910390f35b61041c610818565b6040518082815260200191505060405180910390f35b61043a610835565b6040518082815260200191505060405180910390f35b6104b5600480360361014081101561046757600080fd5b81019080806101400190600a806020026040519081016040528092919082600a60200280828437600081840152601f19601f820116905080830192505050505050919291929050505061083b565b005b6104f9600480360360208110156104cd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610850565b005b6060828280806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f82011690508083019250505050505050905092915050565b6060848480806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509050949350505050565b600061059f6107c1565b15156105aa57600080fd5b600254905090565b6105ba6107c1565b15156105c557600080fd5b806002819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16827f45c1f6eda7f024b26cc599251c9ad18f5004e4736551189399bd442b867c056f60405160405180910390a450565b600381600a8110151561063957fe5b016000915090505481565b61064c6107c1565b151561065757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61071e6107c1565b151561072957600080fd5b806001819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f78066994b71b7ae363ccf836f9e1da0934501c35bcb4d8d5db7bb74e75fe6e46836040518082815260200191505060405180910390a350565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b60006108226107c1565b151561082d57600080fd5b600154905090565b60025481565b80600390600a61084c929190610969565b5050565b6108586107c1565b151561086357600080fd5b61086c8161086f565b50565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156108ab57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b82600a8101928215610998579160200282015b8281111561099757825182559160200191906001019061097c565b5b5090506109a591906109a9565b5090565b6109cb91905b808211156109c75760008160009055506001016109af565b5090565b9056fea165627a7a723058209eff31e5a64ca1c13dc1e8724417d24fd13e845b157168e57022cd592e1904bc0029",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100ec576000357c01000000000000000000000000000000000000000000000000000000009004806389cfd71b116100a95780639ad55220116100835780639ad5522014610414578063db5446a514610432578063e26f034214610450578063f2fde38b146104b7576100ec565b806389cfd71b1461037a5780638da5cb5b146103a85780638f32d59b146103f2576100ec565b80630fd2ce17146100f1578063278d6e5b146101bf5780632c044779146102e257806331845f7d1461030057806338d941931461032e578063715018a614610370575b600080fd5b6101686004803603602081101561010757600080fd5b810190808035906020019064010000000081111561012457600080fd5b82018360208201111561013657600080fd5b8035906020019184602083028401116401000000008311171561015857600080fd5b90919293919293905050506104fb565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156101ab578082015181840152602081019050610190565b505050509050019250505060405180910390f35b61028b600480360360408110156101d557600080fd5b81019080803590602001906401000000008111156101f257600080fd5b82018360208201111561020457600080fd5b8035906020019184602083028401116401000000008311171561022657600080fd5b90919293919293908035906020019064010000000081111561024757600080fd5b82018360208201111561025957600080fd5b8035906020019184602083028401116401000000008311171561027b57600080fd5b9091929391929390505050610547565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156102ce5780820151818401526020810190506102b3565b505050509050019250505060405180910390f35b6102ea610595565b6040518082815260200191505060405180910390f35b61032c6004803603602081101561031657600080fd5b81019080803590602001909291905050506105b2565b005b61035a6004803603602081101561034457600080fd5b810190808035906020019092919050505061062a565b6040518082815260200191505060405180910390f35b610378610644565b005b6103a66004803603602081101561039057600080fd5b8101908080359060200190929190505050610716565b005b6103b0610798565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103fa6107c1565b604051808215151515815260200191505060405180910390f35b61041c610818565b6040518082815260200191505060405180910390f35b61043a610835565b6040518082815260200191505060405180910390f35b6104b5600480360361014081101561046757600080fd5b81019080806101400190600a806020026040519081016040528092919082600a60200280828437600081840152601f19601f820116905080830192505050505050919291929050505061083b565b005b6104f9600480360360208110156104cd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610850565b005b6060828280806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f82011690508083019250505050505050905092915050565b6060848480806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509050949350505050565b600061059f6107c1565b15156105aa57600080fd5b600254905090565b6105ba6107c1565b15156105c557600080fd5b806002819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff16827f45c1f6eda7f024b26cc599251c9ad18f5004e4736551189399bd442b867c056f60405160405180910390a450565b600381600a8110151561063957fe5b016000915090505481565b61064c6107c1565b151561065757600080fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b61071e6107c1565b151561072957600080fd5b806001819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167f78066994b71b7ae363ccf836f9e1da0934501c35bcb4d8d5db7bb74e75fe6e46836040518082815260200191505060405180910390a350565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b60006108226107c1565b151561082d57600080fd5b600154905090565b60025481565b80600390600a61084c929190610969565b5050565b6108586107c1565b151561086357600080fd5b61086c8161086f565b50565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156108ab57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b82600a8101928215610998579160200282015b8281111561099757825182559160200191906001019061097c565b5b5090506109a591906109a9565b5090565b6109cb91905b808211156109c75760008160009055506001016109af565b5090565b9056fea165627a7a723058209eff31e5a64ca1c13dc1e8724417d24fd13e845b157168e57022cd592e1904bc0029",
  "sourceMap": "90:1631:1:-;;;231:177;8:9:-1;5:2;;;30:1;27;20:12;5:2;231:177:1;;;;;;;;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;231:177:1;;;;;;;;;;;;;;;;;;;;;;;;;;524:10:5;515:6;;:19;;;;;;;;;;;;;;;;;;582:6;;;;;;;;;;;549:40;;578:1;549:40;;;;;;;;;;;;338:7:1;329:6;:16;;;;367:10;355:9;:22;;;;395:6;387:5;:14;;;;;;;:::i;:::-;;231:177;;;90:1631;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;",
  "deployedSourceMap": "90:1631:1:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;90:1631:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1365:160;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1365:160:1;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;1365:160:1;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1365:160:1;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;1365:160:1;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1365:160:1;;;;;;;;;;;;;;;;;1531:187;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1531:187:1;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;1531:187:1;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1531:187:1;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;1531:187:1;;;;;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;1531:187:1;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;1531:187:1;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;1531:187:1;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1531:187:1;;;;;;;;;;;;;;;;;915:113;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1034:173;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1034:173:1;;;;;;;;;;;;;;;;;:::i;:::-;;1233:21;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1233:21:1;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1423:137:5;;;:::i;:::-;;737:172:1;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;737:172:1;;;;;;;;;;;;;;;;;:::i;:::-;;659:77:5;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;979:90;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;612:119:1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;203:21;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1260:99;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;1260:99:1;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;1260:99:1;;;;;;;;;;;;;;:::i;:::-;;1731:107:5;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1731:107:5;;;;;;;;;;;;;;;;;;;:::i;:::-;;1365:160:1;1463:25;1512:6;;1505:13;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;1505:13:1;;;;;;;;1365:160;;;;:::o;1531:187::-;1656:25;1705:6;;1698:13;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;1698:13:1;;;;;;;;1531:187;;;;;;:::o;915:113::-;984:4;863:9:5;:7;:9::i;:::-;855:18;;;;;;;;1012:9:1;;1005:16;;915:113;:::o;1034:173::-;863:9:5;:7;:9::i;:::-;855:18;;;;;;;;1129:9:1;1117;:21;;;;1189:10;1153:47;;1182:4;1153:47;;1163:9;1153:47;;;;;;;;;;1034:173;:::o;1233:21::-;;;;;;;;;;;;;;;;;;;;:::o;1423:137:5:-;863:9;:7;:9::i;:::-;855:18;;;;;;;;1521:1;1484:40;;1505:6;;;;;;;;;;;1484:40;;;;;;;;;;;;1551:1;1534:6;;:19;;;;;;;;;;;;;;;;;;1423:137::o;737:172:1:-;863:9:5;:7;:9::i;:::-;855:18;;;;;;;;831:9:1;822:6;:18;;;;891:10;855:47;;884:4;855:47;;;865:9;855:47;;;;;;;;;;;;;;;;;;737:172;:::o;659:77:5:-;697:7;723:6;;;;;;;;;;;716:13;;659:77;:::o;979:90::-;1019:4;1056:6;;;;;;;;;;;1042:20;;:10;:20;;;1035:27;;979:90;:::o;612:119:1:-;690:4;863:9:5;:7;:9::i;:::-;855:18;;;;;;;;718:6:1;;711:13;;612:119;:::o;203:21::-;;;;:::o;1260:99::-;1346:6;1338:5;:14;;;;;;;:::i;:::-;;1260:99;:::o;1731:107:5:-;863:9;:7;:9::i;:::-;855:18;;;;;;;;1803:28;1822:8;1803:18;:28::i;:::-;1731:107;:::o;1982:183::-;2075:1;2055:22;;:8;:22;;;;2047:31;;;;;;;;2122:8;2093:38;;2114:6;;;;;;;;;;;2093:38;;;;;;;;;;;;2150:8;2141:6;;:17;;;;;;;;;;;;;;;;;;1982:183;:::o;90:1631:1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
  "source": "pragma solidity ^0.5.2;\n\nimport 'openzeppelin-solidity/contracts/ownership/Ownable.sol';\n\ncontract DummyContract is Ownable { \n\n    uint private constant SECRET_CONST = 123;\n    uint private secret;\n    uint public wellKnown;\n\n    constructor(uint _secret, uint _wellKnown, uint[10] memory _array) \n        public \n    {\n        secret = _secret;\n        wellKnown = _wellKnown;\n        array = _array;\n    }\n\n    event SecretSet(uint newValue, address indexed  contractAddress, address indexed sender);\n    event PublicSet(uint indexed newValue, address indexed  contractAddress, address indexed sender);\n\n\n    function getPrivate() \n        onlyOwner\n        public view\n        returns (uint) \n    {\n        return secret;\n    }\n\n    function setPrivate(uint _newValue) \n        onlyOwner \n        public\n    {\n        secret = _newValue;\n        emit SecretSet(_newValue, address(this), msg.sender);\n    }\n\n    function getPublic() \n        onlyOwner\n        public view returns (uint) \n    {\n        return wellKnown;\n    }\n\n    function setPublic(uint _newValue) \n        onlyOwner\n        public\n    {\n        wellKnown = _newValue;\n        emit PublicSet(_newValue, address(this), msg.sender);\n    }\n\n    // Array tests\n\n    uint[10] public array;\n    function ArrayTypesTest(uint[10] memory _array) \n        public\n    {\n        array = _array;\n    }\n\n    function funcArrayInArguments(address[] calldata _array) \n        pure external \n        returns (address[] memory retArray) \n    {\n        return _array;\n    }\n\n    function funcArrayInArguments(address[] calldata _array, address[] calldata _array2) \n        pure external\n        returns (address[] memory retArray) \n    {\n        return _array;\n    }\n\n}\n",
  "sourcePath": "C:/MD/Dev/Soltsice/contracts/DummyContract.sol",
  "ast": {
    "absolutePath": "/C/MD/Dev/Soltsice/contracts/DummyContract.sol",
    "exportedSymbols": {
      "DummyContract": [
        400
      ]
    },
    "id": 401,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 244,
        "literals": [
          "solidity",
          "^",
          "0.5",
          ".2"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:23:1"
      },
      {
        "absolutePath": "openzeppelin-solidity/contracts/ownership/Ownable.sol",
        "file": "openzeppelin-solidity/contracts/ownership/Ownable.sol",
        "id": 245,
        "nodeType": "ImportDirective",
        "scope": 401,
        "sourceUnit": 1920,
        "src": "25:63:1",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 246,
              "name": "Ownable",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 1919,
              "src": "116:7:1",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_Ownable_$1919",
                "typeString": "contract Ownable"
              }
            },
            "id": 247,
            "nodeType": "InheritanceSpecifier",
            "src": "116:7:1"
          }
        ],
        "contractDependencies": [
          1919
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 400,
        "linearizedBaseContracts": [
          400,
          1919
        ],
        "name": "DummyContract",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": true,
            "id": 250,
            "name": "SECRET_CONST",
            "nodeType": "VariableDeclaration",
            "scope": 400,
            "src": "132:40:1",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 248,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "132:4:1",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "313233",
              "id": 249,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "169:3:1",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_123_by_1",
                "typeString": "int_const 123"
              },
              "value": "123"
            },
            "visibility": "private"
          },
          {
            "constant": false,
            "id": 252,
            "name": "secret",
            "nodeType": "VariableDeclaration",
            "scope": 400,
            "src": "178:19:1",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 251,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "178:4:1",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": null,
            "visibility": "private"
          },
          {
            "constant": false,
            "id": 254,
            "name": "wellKnown",
            "nodeType": "VariableDeclaration",
            "scope": 400,
            "src": "203:21:1",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 253,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "203:4:1",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 277,
              "nodeType": "Block",
              "src": "319:89:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 267,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 265,
                      "name": "secret",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 252,
                      "src": "329:6:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 266,
                      "name": "_secret",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 256,
                      "src": "338:7:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "329:16:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 268,
                  "nodeType": "ExpressionStatement",
                  "src": "329:16:1"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 271,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 269,
                      "name": "wellKnown",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 254,
                      "src": "355:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 270,
                      "name": "_wellKnown",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 258,
                      "src": "367:10:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "355:22:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 272,
                  "nodeType": "ExpressionStatement",
                  "src": "355:22:1"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 275,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 273,
                      "name": "array",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 360,
                      "src": "387:5:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$10_storage",
                        "typeString": "uint256[10] storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 274,
                      "name": "_array",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 262,
                      "src": "395:6:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$10_memory_ptr",
                        "typeString": "uint256[10] memory"
                      }
                    },
                    "src": "387:14:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$10_storage",
                      "typeString": "uint256[10] storage ref"
                    }
                  },
                  "id": 276,
                  "nodeType": "ExpressionStatement",
                  "src": "387:14:1"
                }
              ]
            },
            "documentation": null,
            "id": 278,
            "implemented": true,
            "kind": "constructor",
            "modifiers": [],
            "name": "",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 263,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 256,
                  "name": "_secret",
                  "nodeType": "VariableDeclaration",
                  "scope": 278,
                  "src": "243:12:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 255,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "243:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 258,
                  "name": "_wellKnown",
                  "nodeType": "VariableDeclaration",
                  "scope": 278,
                  "src": "257:15:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 257,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "257:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 262,
                  "name": "_array",
                  "nodeType": "VariableDeclaration",
                  "scope": 278,
                  "src": "274:22:1",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$10_memory_ptr",
                    "typeString": "uint256[10]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 259,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "274:4:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 261,
                    "length": {
                      "argumentTypes": null,
                      "hexValue": "3130",
                      "id": 260,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "279:2:1",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": null,
                        "typeString": null
                      },
                      "value": "10"
                    },
                    "nodeType": "ArrayTypeName",
                    "src": "274:8:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$10_storage_ptr",
                      "typeString": "uint256[10]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "242:55:1"
            },
            "returnParameters": {
              "id": 264,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "319:0:1"
            },
            "scope": 400,
            "src": "231:177:1",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 286,
            "name": "SecretSet",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 285,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 280,
                  "indexed": false,
                  "name": "newValue",
                  "nodeType": "VariableDeclaration",
                  "scope": 286,
                  "src": "430:13:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 279,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "430:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 282,
                  "indexed": true,
                  "name": "contractAddress",
                  "nodeType": "VariableDeclaration",
                  "scope": 286,
                  "src": "445:32:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 281,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "445:7:1",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 284,
                  "indexed": true,
                  "name": "sender",
                  "nodeType": "VariableDeclaration",
                  "scope": 286,
                  "src": "479:22:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 283,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "479:7:1",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "429:73:1"
            },
            "src": "414:89:1"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 294,
            "name": "PublicSet",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 293,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 288,
                  "indexed": true,
                  "name": "newValue",
                  "nodeType": "VariableDeclaration",
                  "scope": 294,
                  "src": "524:21:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 287,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "524:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 290,
                  "indexed": true,
                  "name": "contractAddress",
                  "nodeType": "VariableDeclaration",
                  "scope": 294,
                  "src": "547:32:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 289,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "547:7:1",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 292,
                  "indexed": true,
                  "name": "sender",
                  "nodeType": "VariableDeclaration",
                  "scope": 294,
                  "src": "581:22:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 291,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "581:7:1",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "523:81:1"
            },
            "src": "508:97:1"
          },
          {
            "body": {
              "id": 303,
              "nodeType": "Block",
              "src": "701:30:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 301,
                    "name": "secret",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 252,
                    "src": "718:6:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 300,
                  "id": 302,
                  "nodeType": "Return",
                  "src": "711:13:1"
                }
              ]
            },
            "documentation": null,
            "id": 304,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": null,
                "id": 297,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 296,
                  "name": "onlyOwner",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 1853,
                  "src": "643:9:1",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$__$",
                    "typeString": "modifier ()"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "643:9:1"
              }
            ],
            "name": "getPrivate",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 295,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "631:2:1"
            },
            "returnParameters": {
              "id": 300,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 299,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 304,
                  "src": "690:4:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 298,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "690:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "689:6:1"
            },
            "scope": 400,
            "src": "612:119:1",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 324,
              "nodeType": "Block",
              "src": "812:97:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 313,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 311,
                      "name": "secret",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 252,
                      "src": "822:6:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 312,
                      "name": "_newValue",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 306,
                      "src": "831:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "822:18:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 314,
                  "nodeType": "ExpressionStatement",
                  "src": "822:18:1"
                },
                {
                  "eventCall": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 316,
                        "name": "_newValue",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 306,
                        "src": "865:9:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 318,
                            "name": "this",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 1955,
                            "src": "884:4:1",
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_DummyContract_$400",
                              "typeString": "contract DummyContract"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_contract$_DummyContract_$400",
                              "typeString": "contract DummyContract"
                            }
                          ],
                          "id": 317,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "876:7:1",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_address_$",
                            "typeString": "type(address)"
                          },
                          "typeName": "address"
                        },
                        "id": 319,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "876:13:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 320,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 1934,
                          "src": "891:3:1",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 321,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "891:10:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      ],
                      "id": 315,
                      "name": "SecretSet",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 286,
                      "src": "855:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$returns$__$",
                        "typeString": "function (uint256,address,address)"
                      }
                    },
                    "id": 322,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "855:47:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 323,
                  "nodeType": "EmitStatement",
                  "src": "850:52:1"
                }
              ]
            },
            "documentation": null,
            "id": 325,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": null,
                "id": 309,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 308,
                  "name": "onlyOwner",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 1853,
                  "src": "782:9:1",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$__$",
                    "typeString": "modifier ()"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "782:9:1"
              }
            ],
            "name": "setPrivate",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 307,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 306,
                  "name": "_newValue",
                  "nodeType": "VariableDeclaration",
                  "scope": 325,
                  "src": "757:14:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 305,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "757:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "756:16:1"
            },
            "returnParameters": {
              "id": 310,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "812:0:1"
            },
            "scope": 400,
            "src": "737:172:1",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 334,
              "nodeType": "Block",
              "src": "995:33:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 332,
                    "name": "wellKnown",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 254,
                    "src": "1012:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 331,
                  "id": 333,
                  "nodeType": "Return",
                  "src": "1005:16:1"
                }
              ]
            },
            "documentation": null,
            "id": 335,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": null,
                "id": 328,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 327,
                  "name": "onlyOwner",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 1853,
                  "src": "945:9:1",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$__$",
                    "typeString": "modifier ()"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "945:9:1"
              }
            ],
            "name": "getPublic",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 326,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "933:2:1"
            },
            "returnParameters": {
              "id": 331,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 330,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 335,
                  "src": "984:4:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 329,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "984:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "983:6:1"
            },
            "scope": 400,
            "src": "915:113:1",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 355,
              "nodeType": "Block",
              "src": "1107:100:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 344,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 342,
                      "name": "wellKnown",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 254,
                      "src": "1117:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 343,
                      "name": "_newValue",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 337,
                      "src": "1129:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "1117:21:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 345,
                  "nodeType": "ExpressionStatement",
                  "src": "1117:21:1"
                },
                {
                  "eventCall": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 347,
                        "name": "_newValue",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 337,
                        "src": "1163:9:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 349,
                            "name": "this",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 1955,
                            "src": "1182:4:1",
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_DummyContract_$400",
                              "typeString": "contract DummyContract"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_contract$_DummyContract_$400",
                              "typeString": "contract DummyContract"
                            }
                          ],
                          "id": 348,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "1174:7:1",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_address_$",
                            "typeString": "type(address)"
                          },
                          "typeName": "address"
                        },
                        "id": 350,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1174:13:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 351,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 1934,
                          "src": "1189:3:1",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 352,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "1189:10:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      ],
                      "id": 346,
                      "name": "PublicSet",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 294,
                      "src": "1153:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$returns$__$",
                        "typeString": "function (uint256,address,address)"
                      }
                    },
                    "id": 353,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1153:47:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 354,
                  "nodeType": "EmitStatement",
                  "src": "1148:52:1"
                }
              ]
            },
            "documentation": null,
            "id": 356,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": null,
                "id": 340,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 339,
                  "name": "onlyOwner",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 1853,
                  "src": "1078:9:1",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$__$",
                    "typeString": "modifier ()"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "1078:9:1"
              }
            ],
            "name": "setPublic",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 338,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 337,
                  "name": "_newValue",
                  "nodeType": "VariableDeclaration",
                  "scope": 356,
                  "src": "1053:14:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 336,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "1053:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1052:16:1"
            },
            "returnParameters": {
              "id": 341,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1107:0:1"
            },
            "scope": 400,
            "src": "1034:173:1",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 360,
            "name": "array",
            "nodeType": "VariableDeclaration",
            "scope": 400,
            "src": "1233:21:1",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_array$_t_uint256_$10_storage",
              "typeString": "uint256[10]"
            },
            "typeName": {
              "baseType": {
                "id": 357,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "1233:4:1",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              },
              "id": 359,
              "length": {
                "argumentTypes": null,
                "hexValue": "3130",
                "id": 358,
                "isConstant": false,
                "isLValue": false,
                "isPure": false,
                "kind": "number",
                "lValueRequested": false,
                "nodeType": "Literal",
                "src": "1238:2:1",
                "subdenomination": null,
                "typeDescriptions": {
                  "typeIdentifier": null,
                  "typeString": null
                },
                "value": "10"
              },
              "nodeType": "ArrayTypeName",
              "src": "1233:8:1",
              "typeDescriptions": {
                "typeIdentifier": "t_array$_t_uint256_$10_storage_ptr",
                "typeString": "uint256[10]"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 371,
              "nodeType": "Block",
              "src": "1328:31:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 369,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 367,
                      "name": "array",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 360,
                      "src": "1338:5:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$10_storage",
                        "typeString": "uint256[10] storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 368,
                      "name": "_array",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 364,
                      "src": "1346:6:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$10_memory_ptr",
                        "typeString": "uint256[10] memory"
                      }
                    },
                    "src": "1338:14:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$10_storage",
                      "typeString": "uint256[10] storage ref"
                    }
                  },
                  "id": 370,
                  "nodeType": "ExpressionStatement",
                  "src": "1338:14:1"
                }
              ]
            },
            "documentation": null,
            "id": 372,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "ArrayTypesTest",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 365,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 364,
                  "name": "_array",
                  "nodeType": "VariableDeclaration",
                  "scope": 372,
                  "src": "1284:22:1",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$10_memory_ptr",
                    "typeString": "uint256[10]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 361,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "1284:4:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 363,
                    "length": {
                      "argumentTypes": null,
                      "hexValue": "3130",
                      "id": 362,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "1289:2:1",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": null,
                        "typeString": null
                      },
                      "value": "10"
                    },
                    "nodeType": "ArrayTypeName",
                    "src": "1284:8:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$10_storage_ptr",
                      "typeString": "uint256[10]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1283:24:1"
            },
            "returnParameters": {
              "id": 366,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1328:0:1"
            },
            "scope": 400,
            "src": "1260:99:1",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 383,
              "nodeType": "Block",
              "src": "1495:30:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 381,
                    "name": "_array",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 375,
                    "src": "1512:6:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                      "typeString": "address[] calldata"
                    }
                  },
                  "functionReturnParameters": 380,
                  "id": 382,
                  "nodeType": "Return",
                  "src": "1505:13:1"
                }
              ]
            },
            "documentation": null,
            "id": 384,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "funcArrayInArguments",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 376,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 375,
                  "name": "_array",
                  "nodeType": "VariableDeclaration",
                  "scope": 384,
                  "src": "1395:25:1",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 373,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1395:7:1",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 374,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1395:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1394:27:1"
            },
            "returnParameters": {
              "id": 380,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 379,
                  "name": "retArray",
                  "nodeType": "VariableDeclaration",
                  "scope": 384,
                  "src": "1463:25:1",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 377,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1463:7:1",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 378,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1463:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1462:27:1"
            },
            "scope": 400,
            "src": "1365:160:1",
            "stateMutability": "pure",
            "superFunction": null,
            "visibility": "external"
          },
          {
            "body": {
              "id": 398,
              "nodeType": "Block",
              "src": "1688:30:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 396,
                    "name": "_array",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 387,
                    "src": "1705:6:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                      "typeString": "address[] calldata"
                    }
                  },
                  "functionReturnParameters": 395,
                  "id": 397,
                  "nodeType": "Return",
                  "src": "1698:13:1"
                }
              ]
            },
            "documentation": null,
            "id": 399,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "funcArrayInArguments",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 391,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 387,
                  "name": "_array",
                  "nodeType": "VariableDeclaration",
                  "scope": 399,
                  "src": "1561:25:1",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 385,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1561:7:1",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 386,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1561:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 390,
                  "name": "_array2",
                  "nodeType": "VariableDeclaration",
                  "scope": 399,
                  "src": "1588:26:1",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 388,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1588:7:1",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 389,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1588:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1560:55:1"
            },
            "returnParameters": {
              "id": 395,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 394,
                  "name": "retArray",
                  "nodeType": "VariableDeclaration",
                  "scope": 399,
                  "src": "1656:25:1",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 392,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1656:7:1",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 393,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1656:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1655:27:1"
            },
            "scope": 400,
            "src": "1531:187:1",
            "stateMutability": "pure",
            "superFunction": null,
            "visibility": "external"
          }
        ],
        "scope": 401,
        "src": "90:1631:1"
      }
    ],
    "src": "0:1722:1"
  },
  "legacyAST": {
    "absolutePath": "/C/MD/Dev/Soltsice/contracts/DummyContract.sol",
    "exportedSymbols": {
      "DummyContract": [
        400
      ]
    },
    "id": 401,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 244,
        "literals": [
          "solidity",
          "^",
          "0.5",
          ".2"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:23:1"
      },
      {
        "absolutePath": "openzeppelin-solidity/contracts/ownership/Ownable.sol",
        "file": "openzeppelin-solidity/contracts/ownership/Ownable.sol",
        "id": 245,
        "nodeType": "ImportDirective",
        "scope": 401,
        "sourceUnit": 1920,
        "src": "25:63:1",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 246,
              "name": "Ownable",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 1919,
              "src": "116:7:1",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_Ownable_$1919",
                "typeString": "contract Ownable"
              }
            },
            "id": 247,
            "nodeType": "InheritanceSpecifier",
            "src": "116:7:1"
          }
        ],
        "contractDependencies": [
          1919
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 400,
        "linearizedBaseContracts": [
          400,
          1919
        ],
        "name": "DummyContract",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": true,
            "id": 250,
            "name": "SECRET_CONST",
            "nodeType": "VariableDeclaration",
            "scope": 400,
            "src": "132:40:1",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 248,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "132:4:1",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "313233",
              "id": 249,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "169:3:1",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_123_by_1",
                "typeString": "int_const 123"
              },
              "value": "123"
            },
            "visibility": "private"
          },
          {
            "constant": false,
            "id": 252,
            "name": "secret",
            "nodeType": "VariableDeclaration",
            "scope": 400,
            "src": "178:19:1",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 251,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "178:4:1",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": null,
            "visibility": "private"
          },
          {
            "constant": false,
            "id": 254,
            "name": "wellKnown",
            "nodeType": "VariableDeclaration",
            "scope": 400,
            "src": "203:21:1",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 253,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "203:4:1",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 277,
              "nodeType": "Block",
              "src": "319:89:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 267,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 265,
                      "name": "secret",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 252,
                      "src": "329:6:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 266,
                      "name": "_secret",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 256,
                      "src": "338:7:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "329:16:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 268,
                  "nodeType": "ExpressionStatement",
                  "src": "329:16:1"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 271,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 269,
                      "name": "wellKnown",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 254,
                      "src": "355:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 270,
                      "name": "_wellKnown",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 258,
                      "src": "367:10:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "355:22:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 272,
                  "nodeType": "ExpressionStatement",
                  "src": "355:22:1"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 275,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 273,
                      "name": "array",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 360,
                      "src": "387:5:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$10_storage",
                        "typeString": "uint256[10] storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 274,
                      "name": "_array",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 262,
                      "src": "395:6:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$10_memory_ptr",
                        "typeString": "uint256[10] memory"
                      }
                    },
                    "src": "387:14:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$10_storage",
                      "typeString": "uint256[10] storage ref"
                    }
                  },
                  "id": 276,
                  "nodeType": "ExpressionStatement",
                  "src": "387:14:1"
                }
              ]
            },
            "documentation": null,
            "id": 278,
            "implemented": true,
            "kind": "constructor",
            "modifiers": [],
            "name": "",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 263,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 256,
                  "name": "_secret",
                  "nodeType": "VariableDeclaration",
                  "scope": 278,
                  "src": "243:12:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 255,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "243:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 258,
                  "name": "_wellKnown",
                  "nodeType": "VariableDeclaration",
                  "scope": 278,
                  "src": "257:15:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 257,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "257:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 262,
                  "name": "_array",
                  "nodeType": "VariableDeclaration",
                  "scope": 278,
                  "src": "274:22:1",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$10_memory_ptr",
                    "typeString": "uint256[10]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 259,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "274:4:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 261,
                    "length": {
                      "argumentTypes": null,
                      "hexValue": "3130",
                      "id": 260,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "279:2:1",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": null,
                        "typeString": null
                      },
                      "value": "10"
                    },
                    "nodeType": "ArrayTypeName",
                    "src": "274:8:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$10_storage_ptr",
                      "typeString": "uint256[10]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "242:55:1"
            },
            "returnParameters": {
              "id": 264,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "319:0:1"
            },
            "scope": 400,
            "src": "231:177:1",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 286,
            "name": "SecretSet",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 285,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 280,
                  "indexed": false,
                  "name": "newValue",
                  "nodeType": "VariableDeclaration",
                  "scope": 286,
                  "src": "430:13:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 279,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "430:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 282,
                  "indexed": true,
                  "name": "contractAddress",
                  "nodeType": "VariableDeclaration",
                  "scope": 286,
                  "src": "445:32:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 281,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "445:7:1",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 284,
                  "indexed": true,
                  "name": "sender",
                  "nodeType": "VariableDeclaration",
                  "scope": 286,
                  "src": "479:22:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 283,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "479:7:1",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "429:73:1"
            },
            "src": "414:89:1"
          },
          {
            "anonymous": false,
            "documentation": null,
            "id": 294,
            "name": "PublicSet",
            "nodeType": "EventDefinition",
            "parameters": {
              "id": 293,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 288,
                  "indexed": true,
                  "name": "newValue",
                  "nodeType": "VariableDeclaration",
                  "scope": 294,
                  "src": "524:21:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 287,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "524:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 290,
                  "indexed": true,
                  "name": "contractAddress",
                  "nodeType": "VariableDeclaration",
                  "scope": 294,
                  "src": "547:32:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 289,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "547:7:1",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 292,
                  "indexed": true,
                  "name": "sender",
                  "nodeType": "VariableDeclaration",
                  "scope": 294,
                  "src": "581:22:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 291,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "581:7:1",
                    "stateMutability": "nonpayable",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "523:81:1"
            },
            "src": "508:97:1"
          },
          {
            "body": {
              "id": 303,
              "nodeType": "Block",
              "src": "701:30:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 301,
                    "name": "secret",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 252,
                    "src": "718:6:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 300,
                  "id": 302,
                  "nodeType": "Return",
                  "src": "711:13:1"
                }
              ]
            },
            "documentation": null,
            "id": 304,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": null,
                "id": 297,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 296,
                  "name": "onlyOwner",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 1853,
                  "src": "643:9:1",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$__$",
                    "typeString": "modifier ()"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "643:9:1"
              }
            ],
            "name": "getPrivate",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 295,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "631:2:1"
            },
            "returnParameters": {
              "id": 300,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 299,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 304,
                  "src": "690:4:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 298,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "690:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "689:6:1"
            },
            "scope": 400,
            "src": "612:119:1",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 324,
              "nodeType": "Block",
              "src": "812:97:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 313,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 311,
                      "name": "secret",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 252,
                      "src": "822:6:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 312,
                      "name": "_newValue",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 306,
                      "src": "831:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "822:18:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 314,
                  "nodeType": "ExpressionStatement",
                  "src": "822:18:1"
                },
                {
                  "eventCall": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 316,
                        "name": "_newValue",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 306,
                        "src": "865:9:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 318,
                            "name": "this",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 1955,
                            "src": "884:4:1",
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_DummyContract_$400",
                              "typeString": "contract DummyContract"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_contract$_DummyContract_$400",
                              "typeString": "contract DummyContract"
                            }
                          ],
                          "id": 317,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "876:7:1",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_address_$",
                            "typeString": "type(address)"
                          },
                          "typeName": "address"
                        },
                        "id": 319,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "876:13:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 320,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 1934,
                          "src": "891:3:1",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 321,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "891:10:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      ],
                      "id": 315,
                      "name": "SecretSet",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 286,
                      "src": "855:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$returns$__$",
                        "typeString": "function (uint256,address,address)"
                      }
                    },
                    "id": 322,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "855:47:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 323,
                  "nodeType": "EmitStatement",
                  "src": "850:52:1"
                }
              ]
            },
            "documentation": null,
            "id": 325,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": null,
                "id": 309,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 308,
                  "name": "onlyOwner",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 1853,
                  "src": "782:9:1",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$__$",
                    "typeString": "modifier ()"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "782:9:1"
              }
            ],
            "name": "setPrivate",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 307,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 306,
                  "name": "_newValue",
                  "nodeType": "VariableDeclaration",
                  "scope": 325,
                  "src": "757:14:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 305,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "757:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "756:16:1"
            },
            "returnParameters": {
              "id": 310,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "812:0:1"
            },
            "scope": 400,
            "src": "737:172:1",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 334,
              "nodeType": "Block",
              "src": "995:33:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 332,
                    "name": "wellKnown",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 254,
                    "src": "1012:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 331,
                  "id": 333,
                  "nodeType": "Return",
                  "src": "1005:16:1"
                }
              ]
            },
            "documentation": null,
            "id": 335,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": null,
                "id": 328,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 327,
                  "name": "onlyOwner",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 1853,
                  "src": "945:9:1",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$__$",
                    "typeString": "modifier ()"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "945:9:1"
              }
            ],
            "name": "getPublic",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 326,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "933:2:1"
            },
            "returnParameters": {
              "id": 331,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 330,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 335,
                  "src": "984:4:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 329,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "984:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "983:6:1"
            },
            "scope": 400,
            "src": "915:113:1",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 355,
              "nodeType": "Block",
              "src": "1107:100:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 344,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 342,
                      "name": "wellKnown",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 254,
                      "src": "1117:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 343,
                      "name": "_newValue",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 337,
                      "src": "1129:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "1117:21:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 345,
                  "nodeType": "ExpressionStatement",
                  "src": "1117:21:1"
                },
                {
                  "eventCall": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 347,
                        "name": "_newValue",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 337,
                        "src": "1163:9:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "arguments": [
                          {
                            "argumentTypes": null,
                            "id": 349,
                            "name": "this",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 1955,
                            "src": "1182:4:1",
                            "typeDescriptions": {
                              "typeIdentifier": "t_contract$_DummyContract_$400",
                              "typeString": "contract DummyContract"
                            }
                          }
                        ],
                        "expression": {
                          "argumentTypes": [
                            {
                              "typeIdentifier": "t_contract$_DummyContract_$400",
                              "typeString": "contract DummyContract"
                            }
                          ],
                          "id": 348,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "nodeType": "ElementaryTypeNameExpression",
                          "src": "1174:7:1",
                          "typeDescriptions": {
                            "typeIdentifier": "t_type$_t_address_$",
                            "typeString": "type(address)"
                          },
                          "typeName": "address"
                        },
                        "id": 350,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "kind": "typeConversion",
                        "lValueRequested": false,
                        "names": [],
                        "nodeType": "FunctionCall",
                        "src": "1174:13:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 351,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 1934,
                          "src": "1189:3:1",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 352,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "1189:10:1",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_address_payable",
                          "typeString": "address payable"
                        }
                      ],
                      "id": 346,
                      "name": "PublicSet",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 294,
                      "src": "1153:9:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$returns$__$",
                        "typeString": "function (uint256,address,address)"
                      }
                    },
                    "id": 353,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1153:47:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_tuple$__$",
                      "typeString": "tuple()"
                    }
                  },
                  "id": 354,
                  "nodeType": "EmitStatement",
                  "src": "1148:52:1"
                }
              ]
            },
            "documentation": null,
            "id": 356,
            "implemented": true,
            "kind": "function",
            "modifiers": [
              {
                "arguments": null,
                "id": 340,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 339,
                  "name": "onlyOwner",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 1853,
                  "src": "1078:9:1",
                  "typeDescriptions": {
                    "typeIdentifier": "t_modifier$__$",
                    "typeString": "modifier ()"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "1078:9:1"
              }
            ],
            "name": "setPublic",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 338,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 337,
                  "name": "_newValue",
                  "nodeType": "VariableDeclaration",
                  "scope": 356,
                  "src": "1053:14:1",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 336,
                    "name": "uint",
                    "nodeType": "ElementaryTypeName",
                    "src": "1053:4:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1052:16:1"
            },
            "returnParameters": {
              "id": 341,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1107:0:1"
            },
            "scope": 400,
            "src": "1034:173:1",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 360,
            "name": "array",
            "nodeType": "VariableDeclaration",
            "scope": 400,
            "src": "1233:21:1",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_array$_t_uint256_$10_storage",
              "typeString": "uint256[10]"
            },
            "typeName": {
              "baseType": {
                "id": 357,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "1233:4:1",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              },
              "id": 359,
              "length": {
                "argumentTypes": null,
                "hexValue": "3130",
                "id": 358,
                "isConstant": false,
                "isLValue": false,
                "isPure": false,
                "kind": "number",
                "lValueRequested": false,
                "nodeType": "Literal",
                "src": "1238:2:1",
                "subdenomination": null,
                "typeDescriptions": {
                  "typeIdentifier": null,
                  "typeString": null
                },
                "value": "10"
              },
              "nodeType": "ArrayTypeName",
              "src": "1233:8:1",
              "typeDescriptions": {
                "typeIdentifier": "t_array$_t_uint256_$10_storage_ptr",
                "typeString": "uint256[10]"
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 371,
              "nodeType": "Block",
              "src": "1328:31:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 369,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 367,
                      "name": "array",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 360,
                      "src": "1338:5:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$10_storage",
                        "typeString": "uint256[10] storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 368,
                      "name": "_array",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 364,
                      "src": "1346:6:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$10_memory_ptr",
                        "typeString": "uint256[10] memory"
                      }
                    },
                    "src": "1338:14:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$10_storage",
                      "typeString": "uint256[10] storage ref"
                    }
                  },
                  "id": 370,
                  "nodeType": "ExpressionStatement",
                  "src": "1338:14:1"
                }
              ]
            },
            "documentation": null,
            "id": 372,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "ArrayTypesTest",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 365,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 364,
                  "name": "_array",
                  "nodeType": "VariableDeclaration",
                  "scope": 372,
                  "src": "1284:22:1",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$10_memory_ptr",
                    "typeString": "uint256[10]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 361,
                      "name": "uint",
                      "nodeType": "ElementaryTypeName",
                      "src": "1284:4:1",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 363,
                    "length": {
                      "argumentTypes": null,
                      "hexValue": "3130",
                      "id": 362,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "1289:2:1",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": null,
                        "typeString": null
                      },
                      "value": "10"
                    },
                    "nodeType": "ArrayTypeName",
                    "src": "1284:8:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$10_storage_ptr",
                      "typeString": "uint256[10]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1283:24:1"
            },
            "returnParameters": {
              "id": 366,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1328:0:1"
            },
            "scope": 400,
            "src": "1260:99:1",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 383,
              "nodeType": "Block",
              "src": "1495:30:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 381,
                    "name": "_array",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 375,
                    "src": "1512:6:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                      "typeString": "address[] calldata"
                    }
                  },
                  "functionReturnParameters": 380,
                  "id": 382,
                  "nodeType": "Return",
                  "src": "1505:13:1"
                }
              ]
            },
            "documentation": null,
            "id": 384,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "funcArrayInArguments",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 376,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 375,
                  "name": "_array",
                  "nodeType": "VariableDeclaration",
                  "scope": 384,
                  "src": "1395:25:1",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 373,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1395:7:1",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 374,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1395:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1394:27:1"
            },
            "returnParameters": {
              "id": 380,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 379,
                  "name": "retArray",
                  "nodeType": "VariableDeclaration",
                  "scope": 384,
                  "src": "1463:25:1",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 377,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1463:7:1",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 378,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1463:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1462:27:1"
            },
            "scope": 400,
            "src": "1365:160:1",
            "stateMutability": "pure",
            "superFunction": null,
            "visibility": "external"
          },
          {
            "body": {
              "id": 398,
              "nodeType": "Block",
              "src": "1688:30:1",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 396,
                    "name": "_array",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 387,
                    "src": "1705:6:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                      "typeString": "address[] calldata"
                    }
                  },
                  "functionReturnParameters": 395,
                  "id": 397,
                  "nodeType": "Return",
                  "src": "1698:13:1"
                }
              ]
            },
            "documentation": null,
            "id": 399,
            "implemented": true,
            "kind": "function",
            "modifiers": [],
            "name": "funcArrayInArguments",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 391,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 387,
                  "name": "_array",
                  "nodeType": "VariableDeclaration",
                  "scope": 399,
                  "src": "1561:25:1",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 385,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1561:7:1",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 386,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1561:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 390,
                  "name": "_array2",
                  "nodeType": "VariableDeclaration",
                  "scope": 399,
                  "src": "1588:26:1",
                  "stateVariable": false,
                  "storageLocation": "calldata",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_calldata_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 388,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1588:7:1",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 389,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1588:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1560:55:1"
            },
            "returnParameters": {
              "id": 395,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 394,
                  "name": "retArray",
                  "nodeType": "VariableDeclaration",
                  "scope": 399,
                  "src": "1656:25:1",
                  "stateVariable": false,
                  "storageLocation": "memory",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 392,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "1656:7:1",
                      "stateMutability": "nonpayable",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 393,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1656:9:1",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1655:27:1"
            },
            "scope": 400,
            "src": "1531:187:1",
            "stateMutability": "pure",
            "superFunction": null,
            "visibility": "external"
          }
        ],
        "scope": 401,
        "src": "90:1631:1"
      }
    ],
    "src": "0:1722:1"
  },
  "compiler": {
    "name": "solc",
    "version": "0.5.2+commit.1df8f40c.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.0.6",
  "updatedAt": "2019-03-31T16:08:45.219Z",
  "devdoc": {
    "methods": {
      "isOwner()": {
        "return": "true if `msg.sender` is the owner of the contract."
      },
      "owner()": {
        "return": "the address of the owner."
      },
      "renounceOwnership()": {
        "details": "Allows the current owner to relinquish control of the contract. It will not be possible to call the functions with the `onlyOwner` modifier anymore."
      },
      "transferOwnership(address)": {
        "details": "Allows the current owner to transfer control of the contract to a newOwner.",
        "params": {
          "newOwner": "The address to transfer ownership to."
        }
      }
    }
  },
  "userdoc": {
    "methods": {
      "renounceOwnership()": {
        "notice": "Renouncing ownership will leave the contract without an owner, thereby removing any functionality that is only available to the owner."
      }
    }
  }
}