{
  "contractName": "States",
  "abi": [
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "name": "_mappingBoolToUint",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "_address",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "_uint",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "_uintArray",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "_bytes",
      "outputs": [
        {
          "name": "",
          "type": "bytes"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "int256"
        }
      ],
      "name": "_mappingInttoUint",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "bool"
        },
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "_mappingBoolToMapping",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "name": "_mappingBytes32ToUint",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "_uint8",
      "outputs": [
        {
          "name": "",
          "type": "uint8"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "_string",
      "outputs": [
        {
          "name": "",
          "type": "string"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "_bool",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "_int",
      "outputs": [
        {
          "name": "",
          "type": "int256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "_int8",
      "outputs": [
        {
          "name": "",
          "type": "int8"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "name": "_mappingBoolToBool",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "name": "_mappingAddressToUint",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "name": "_mappingBoolToAddr",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "_mappingUintToUint",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "change",
          "type": "string"
        }
      ],
      "name": "setString",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405260008060006101000a81548160ff021916908360000b60ff16021790555060006001556000600260006101000a81548160ff021916908360ff160217905550600060035530600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040805190810160405280600381526020017f307830000000000000000000000000000000000000000000000000000000000081525060059080519060200190620000d6929190620001aa565b506040805190810160405280600681526020017f737472696e670000000000000000000000000000000000000000000000000000815250600690805190602001906200012492919062000231565b506001600760006101000a81548160ff021916908315150217905550602060405190810160405280606460ff16815250601090600162000166929190620002b8565b503480156200017457600080fd5b506001600f6000600115151515815260200190815260200160002060008081526020019081526020016000208190555062000337565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620001ed57805160ff19168380011785556200021e565b828001600101855582156200021e579182015b828111156200021d57825182559160200191906001019062000200565b5b5090506200022d91906200030f565b5090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200027457805160ff1916838001178555620002a5565b82800160010185558215620002a5579182015b82811115620002a457825182559160200191906001019062000287565b5b509050620002b491906200030f565b5090565b828054828255906000526020600020908101928215620002fc579160200282015b82811115620002fb578251829060ff16905591602001919060010190620002d9565b5b5090506200030b91906200030f565b5090565b6200033491905b808211156200033057600081600090555060010162000316565b5090565b90565b610a1180620003476000396000f3006080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630f0cb3101461010157806318bad217146101445780632543135b1461019b5780634204550d146101c65780634f50ea8d1461020757806359691de5146102975780635c5fb836146102d857806365730935146103255780637c05b1141461036a5780637fcaf6661461039b5780639b267f09146104045780639e6ba9c214610494578063af45869e146104c3578063af78a303146104ee578063bb801ffe1461051f578063ef2297e214610566578063f23cc841146105bd578063f3df55951461062c575b600080fd5b34801561010d57600080fd5b5061012e60048036038101908080351515906020019092919050505061066d565b6040518082815260200191505060405180910390f35b34801561015057600080fd5b50610159610685565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a757600080fd5b506101b06106ab565b6040518082815260200191505060405180910390f35b3480156101d257600080fd5b506101f1600480360381019080803590602001909291905050506106b1565b6040518082815260200191505060405180910390f35b34801561021357600080fd5b5061021c6106d4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561025c578082015181840152602081019050610241565b50505050905090810190601f1680156102895780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102a357600080fd5b506102c260048036038101908080359060200190929190505050610772565b6040518082815260200191505060405180910390f35b3480156102e457600080fd5b5061030f6004803603810190808035151590602001909291908035906020019092919050505061078a565b6040518082815260200191505060405180910390f35b34801561033157600080fd5b5061035460048036038101908080356000191690602001909291905050506107af565b6040518082815260200191505060405180910390f35b34801561037657600080fd5b5061037f6107c7565b604051808260ff1660ff16815260200191505060405180910390f35b3480156103a757600080fd5b50610402600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107da565b005b34801561041057600080fd5b506104196107f4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561045957808201518184015260208101905061043e565b50505050905090810190601f1680156104865780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104a057600080fd5b506104a9610892565b604051808215151515815260200191505060405180910390f35b3480156104cf57600080fd5b506104d86108a5565b6040518082815260200191505060405180910390f35b3480156104fa57600080fd5b506105036108ab565b604051808260000b60000b815260200191505060405180910390f35b34801561052b57600080fd5b5061054c6004803603810190808035151590602001909291905050506108bd565b604051808215151515815260200191505060405180910390f35b34801561057257600080fd5b506105a7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108dd565b6040518082815260200191505060405180910390f35b3480156105c957600080fd5b506105ea6004803603810190808035151590602001909291905050506108f5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561063857600080fd5b5061065760048036038101908080359060200190929190505050610928565b6040518082815260200191505060405180910390f35b600c6020528060005260406000206000915090505481565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60035481565b6010818154811015156106c057fe5b906000526020600020016000915090505481565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561076a5780601f1061073f5761010080835404028352916020019161076a565b820191906000526020600020905b81548152906001019060200180831161074d57829003601f168201915b505050505081565b60096020528060005260406000206000915090505481565b600f602052816000526040600020602052806000526040600020600091509150505481565b600a6020528060005260406000206000915090505481565b600260009054906101000a900460ff1681565b80600690805190602001906107f0929190610940565b5050565b60068054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561088a5780601f1061085f5761010080835404028352916020019161088a565b820191906000526020600020905b81548152906001019060200180831161086d57829003601f168201915b505050505081565b600760009054906101000a900460ff1681565b60015481565b6000809054906101000a900460000b81565b600d6020528060005260406000206000915054906101000a900460ff1681565b600b6020528060005260406000206000915090505481565b600e6020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60086020528060005260406000206000915090505481565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061098157805160ff19168380011785556109af565b828001600101855582156109af579182015b828111156109ae578251825591602001919060010190610993565b5b5090506109bc91906109c0565b5090565b6109e291905b808211156109de5760008160009055506001016109c6565b5090565b905600a165627a7a723058206a3c8a9f7ce9d204b138046921c4f1805219a87a9a94a388da0ac927fd302af10029",
  "deployedBytecode": "0x6080604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630f0cb3101461010157806318bad217146101445780632543135b1461019b5780634204550d146101c65780634f50ea8d1461020757806359691de5146102975780635c5fb836146102d857806365730935146103255780637c05b1141461036a5780637fcaf6661461039b5780639b267f09146104045780639e6ba9c214610494578063af45869e146104c3578063af78a303146104ee578063bb801ffe1461051f578063ef2297e214610566578063f23cc841146105bd578063f3df55951461062c575b600080fd5b34801561010d57600080fd5b5061012e60048036038101908080351515906020019092919050505061066d565b6040518082815260200191505060405180910390f35b34801561015057600080fd5b50610159610685565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a757600080fd5b506101b06106ab565b6040518082815260200191505060405180910390f35b3480156101d257600080fd5b506101f1600480360381019080803590602001909291905050506106b1565b6040518082815260200191505060405180910390f35b34801561021357600080fd5b5061021c6106d4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561025c578082015181840152602081019050610241565b50505050905090810190601f1680156102895780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102a357600080fd5b506102c260048036038101908080359060200190929190505050610772565b6040518082815260200191505060405180910390f35b3480156102e457600080fd5b5061030f6004803603810190808035151590602001909291908035906020019092919050505061078a565b6040518082815260200191505060405180910390f35b34801561033157600080fd5b5061035460048036038101908080356000191690602001909291905050506107af565b6040518082815260200191505060405180910390f35b34801561037657600080fd5b5061037f6107c7565b604051808260ff1660ff16815260200191505060405180910390f35b3480156103a757600080fd5b50610402600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506107da565b005b34801561041057600080fd5b506104196107f4565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561045957808201518184015260208101905061043e565b50505050905090810190601f1680156104865780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156104a057600080fd5b506104a9610892565b604051808215151515815260200191505060405180910390f35b3480156104cf57600080fd5b506104d86108a5565b6040518082815260200191505060405180910390f35b3480156104fa57600080fd5b506105036108ab565b604051808260000b60000b815260200191505060405180910390f35b34801561052b57600080fd5b5061054c6004803603810190808035151590602001909291905050506108bd565b604051808215151515815260200191505060405180910390f35b34801561057257600080fd5b506105a7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108dd565b6040518082815260200191505060405180910390f35b3480156105c957600080fd5b506105ea6004803603810190808035151590602001909291905050506108f5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561063857600080fd5b5061065760048036038101908080359060200190929190505050610928565b6040518082815260200191505060405180910390f35b600c6020528060005260406000206000915090505481565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60035481565b6010818154811015156106c057fe5b906000526020600020016000915090505481565b60058054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561076a5780601f1061073f5761010080835404028352916020019161076a565b820191906000526020600020905b81548152906001019060200180831161074d57829003601f168201915b505050505081565b60096020528060005260406000206000915090505481565b600f602052816000526040600020602052806000526040600020600091509150505481565b600a6020528060005260406000206000915090505481565b600260009054906101000a900460ff1681565b80600690805190602001906107f0929190610940565b5050565b60068054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561088a5780601f1061085f5761010080835404028352916020019161088a565b820191906000526020600020905b81548152906001019060200180831161086d57829003601f168201915b505050505081565b600760009054906101000a900460ff1681565b60015481565b6000809054906101000a900460000b81565b600d6020528060005260406000206000915054906101000a900460ff1681565b600b6020528060005260406000206000915090505481565b600e6020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60086020528060005260406000206000915090505481565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061098157805160ff19168380011785556109af565b828001600101855582156109af579182015b828111156109ae578251825591602001919060010190610993565b5b5090506109bc91906109c0565b5090565b6109e291905b808211156109de5760008160009055506001016109c6565b5090565b905600a165627a7a723058206a3c8a9f7ce9d204b138046921c4f1805219a87a9a94a388da0ac927fd302af10029",
  "sourceMap": "26:1116:2:-;;;87:1;67:21;;;;;;;;;;;;;;;;;;;;;;112:1;94:19;;160:1;138:23;;;;;;;;;;;;;;;;;;;;187:1;167:21;;239:4;213:30;;;;;;;;;;;;;;;;;;;;267:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;314:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;384:4;364:24;;;;;;;;;;;;;;;;;;;;897:32;;;;;;;;;925:3;897:32;;;;;;;;;;;;;:::i;:::-;;984:76;8:9:-1;5:2;;;30:1;27;20:12;5:2;984:76:2;1052:1;1019:21;:27;1041:4;1019:27;;;;;;;;;;;;;;;:30;1047:1;1019:30;;;;;;;;;;;:34;;;;26:1116;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;",
  "deployedSourceMap": "26:1116:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;641:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;641:47:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;213:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;213:30:2;;;;;;;;;;;;;;;;;;;;;;;;;;;167:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;167:21:2;;;;;;;;;;;;;;;;;;;;;;;897:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;897:32:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;267:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;267:27:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;267:27:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;472:45;;8:9:-1;5:2;;;30:1;27;20:12;5:2;472:45:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;803:65;;8:9:-1;5:2;;;30:1;27;20:12;5:2;803:65:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;523:53;;8:9:-1;5:2;;;30:1;27;20:12;5:2;523:53:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;138:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;138:23:2;;;;;;;;;;;;;;;;;;;;;;;;;;;1066:74;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1066:74:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;314:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;314:32:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;314:32:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;364:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;364:24:2;;;;;;;;;;;;;;;;;;;;;;;;;;;94:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;94:19:2;;;;;;;;;;;;;;;;;;;;;;;67:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;67:21:2;;;;;;;;;;;;;;;;;;;;;;;;;;;694:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;694:47:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;582:53;;8:9:-1;5:2;;;30:1;27;20:12;5:2;582:53:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;747:50;;8:9:-1;5:2;;;30:1;27;20:12;5:2;747:50:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;419:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;419:47:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;641;;;;;;;;;;;;;;;;;:::o;213:30::-;;;;;;;;;;;;;:::o;167:21::-;;;;:::o;897:32::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;267:27::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;472:45::-;;;;;;;;;;;;;;;;;:::o;803:65::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;523:53::-;;;;;;;;;;;;;;;;;:::o;138:23::-;;;;;;;;;;;;;:::o;1066:74::-;1127:6;1117:7;:16;;;;;;;;;;;;:::i;:::-;;1066:74;:::o;314:32::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;364:24::-;;;;;;;;;;;;;:::o;94:19::-;;;;:::o;67:21::-;;;;;;;;;;;;;:::o;694:47::-;;;;;;;;;;;;;;;;;;;;;;:::o;582:53::-;;;;;;;;;;;;;;;;;:::o;747:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;419:47::-;;;;;;;;;;;;;;;;;:::o;26:1116::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
  "source": "pragma solidity ^0.4.20;\n\ncontract States {\n\n    //int 8 ->256\n    int8 public _int8 = 0;\n    int public _int = 0;\n\n    //uint8 ->256\n    uint8 public _uint8 = 0;\n    uint public _uint = 0;\n    \n    //address\n    address public _address = this;\n\n    //bytes1..32\n    bytes public _bytes = \"0x0\";\n\n    //string\n    string public _string = \"string\";\n\n    //bool\n    bool public _bool = true;\n\n    //mapping all types\n    mapping(uint => uint) public _mappingUintToUint;\n    mapping(int => uint) public _mappingInttoUint;\n    mapping(bytes32 => uint) public _mappingBytes32ToUint;\n    mapping(address => uint) public _mappingAddressToUint;\n    mapping(bool => uint) public _mappingBoolToUint;\n    mapping(bool => bool) public _mappingBoolToBool;\n    mapping(bool => address) public _mappingBoolToAddr;\n    mapping(bool => mapping(uint=>uint)) public _mappingBoolToMapping;\n\n    //array all types\n    uint[] public _uintArray = [100];\n\n    //enum\n    // ???\n\n    //struct\n    // ???\n\n    function States() public {\n        _mappingBoolToMapping[true][0] = 1;\n    }\n\n    function setString(string change) public {\n        _string = change;\n    }\n}",
  "sourcePath": "/home/ubuntu/dev/contract-state-util/contracts/States.sol",
  "ast": {
    "absolutePath": "/home/ubuntu/dev/contract-state-util/contracts/States.sol",
    "exportedSymbols": {
      "States": [
        165
      ]
    },
    "id": 166,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 79,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".20"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:24:2"
      },
      {
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 165,
        "linearizedBaseContracts": [
          165
        ],
        "name": "States",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": false,
            "id": 82,
            "name": "_int8",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "67:21:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_int8",
              "typeString": "int8"
            },
            "typeName": {
              "id": 80,
              "name": "int8",
              "nodeType": "ElementaryTypeName",
              "src": "67:4:2",
              "typeDescriptions": {
                "typeIdentifier": "t_int8",
                "typeString": "int8"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "30",
              "id": 81,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "87:1:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_0_by_1",
                "typeString": "int_const 0"
              },
              "value": "0"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 85,
            "name": "_int",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "94:19:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_int256",
              "typeString": "int256"
            },
            "typeName": {
              "id": 83,
              "name": "int",
              "nodeType": "ElementaryTypeName",
              "src": "94:3:2",
              "typeDescriptions": {
                "typeIdentifier": "t_int256",
                "typeString": "int256"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "30",
              "id": 84,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "112:1:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_0_by_1",
                "typeString": "int_const 0"
              },
              "value": "0"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 88,
            "name": "_uint8",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "138:23:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint8",
              "typeString": "uint8"
            },
            "typeName": {
              "id": 86,
              "name": "uint8",
              "nodeType": "ElementaryTypeName",
              "src": "138:5:2",
              "typeDescriptions": {
                "typeIdentifier": "t_uint8",
                "typeString": "uint8"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "30",
              "id": 87,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "160:1:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_0_by_1",
                "typeString": "int_const 0"
              },
              "value": "0"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 91,
            "name": "_uint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "167:21:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 89,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "167:4:2",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "30",
              "id": 90,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "187:1:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_0_by_1",
                "typeString": "int_const 0"
              },
              "value": "0"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 94,
            "name": "_address",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "213:30:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_address",
              "typeString": "address"
            },
            "typeName": {
              "id": 92,
              "name": "address",
              "nodeType": "ElementaryTypeName",
              "src": "213:7:2",
              "typeDescriptions": {
                "typeIdentifier": "t_address",
                "typeString": "address"
              }
            },
            "value": {
              "argumentTypes": null,
              "id": 93,
              "name": "this",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "referencedDeclaration": 197,
              "src": "239:4:2",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_States_$165",
                "typeString": "contract States"
              }
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 97,
            "name": "_bytes",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "267:27:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_storage",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 95,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "267:5:2",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "307830",
              "id": 96,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "string",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "289:5:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_stringliteral_77b7d82d931e1a403db0240b08c0716665eec4664af617c457918e4a67bc1810",
                "typeString": "literal_string \"0x0\""
              },
              "value": "0x0"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 100,
            "name": "_string",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "314:32:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_string_storage",
              "typeString": "string"
            },
            "typeName": {
              "id": 98,
              "name": "string",
              "nodeType": "ElementaryTypeName",
              "src": "314:6:2",
              "typeDescriptions": {
                "typeIdentifier": "t_string_storage_ptr",
                "typeString": "string"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "737472696e67",
              "id": 99,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "string",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "338:8:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_stringliteral_97fc46276c172633607a331542609db1e3da793fca183d594ed5a61803a10792",
                "typeString": "literal_string \"string\""
              },
              "value": "string"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 103,
            "name": "_bool",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "364:24:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bool",
              "typeString": "bool"
            },
            "typeName": {
              "id": 101,
              "name": "bool",
              "nodeType": "ElementaryTypeName",
              "src": "364:4:2",
              "typeDescriptions": {
                "typeIdentifier": "t_bool",
                "typeString": "bool"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "74727565",
              "id": 102,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "bool",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "384:4:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_bool",
                "typeString": "bool"
              },
              "value": "true"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 107,
            "name": "_mappingUintToUint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "419:47:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$",
              "typeString": "mapping(uint256 => uint256)"
            },
            "typeName": {
              "id": 106,
              "keyType": {
                "id": 104,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "427:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              },
              "nodeType": "Mapping",
              "src": "419:21:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$",
                "typeString": "mapping(uint256 => uint256)"
              },
              "valueType": {
                "id": 105,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "435:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 111,
            "name": "_mappingInttoUint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "472:45:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_int256_$_t_uint256_$",
              "typeString": "mapping(int256 => uint256)"
            },
            "typeName": {
              "id": 110,
              "keyType": {
                "id": 108,
                "name": "int",
                "nodeType": "ElementaryTypeName",
                "src": "480:3:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_int256",
                  "typeString": "int256"
                }
              },
              "nodeType": "Mapping",
              "src": "472:20:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_int256_$_t_uint256_$",
                "typeString": "mapping(int256 => uint256)"
              },
              "valueType": {
                "id": 109,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "487:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 115,
            "name": "_mappingBytes32ToUint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "523:53:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
              "typeString": "mapping(bytes32 => uint256)"
            },
            "typeName": {
              "id": 114,
              "keyType": {
                "id": 112,
                "name": "bytes32",
                "nodeType": "ElementaryTypeName",
                "src": "531:7:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes32",
                  "typeString": "bytes32"
                }
              },
              "nodeType": "Mapping",
              "src": "523:24:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
                "typeString": "mapping(bytes32 => uint256)"
              },
              "valueType": {
                "id": 113,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "542:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 119,
            "name": "_mappingAddressToUint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "582:53:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
              "typeString": "mapping(address => uint256)"
            },
            "typeName": {
              "id": 118,
              "keyType": {
                "id": 116,
                "name": "address",
                "nodeType": "ElementaryTypeName",
                "src": "590:7:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                }
              },
              "nodeType": "Mapping",
              "src": "582:24:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                "typeString": "mapping(address => uint256)"
              },
              "valueType": {
                "id": 117,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "601:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 123,
            "name": "_mappingBoolToUint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "641:47:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bool_$_t_uint256_$",
              "typeString": "mapping(bool => uint256)"
            },
            "typeName": {
              "id": 122,
              "keyType": {
                "id": 120,
                "name": "bool",
                "nodeType": "ElementaryTypeName",
                "src": "649:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                }
              },
              "nodeType": "Mapping",
              "src": "641:21:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bool_$_t_uint256_$",
                "typeString": "mapping(bool => uint256)"
              },
              "valueType": {
                "id": 121,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "657:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 127,
            "name": "_mappingBoolToBool",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "694:47:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bool_$_t_bool_$",
              "typeString": "mapping(bool => bool)"
            },
            "typeName": {
              "id": 126,
              "keyType": {
                "id": 124,
                "name": "bool",
                "nodeType": "ElementaryTypeName",
                "src": "702:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                }
              },
              "nodeType": "Mapping",
              "src": "694:21:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bool_$_t_bool_$",
                "typeString": "mapping(bool => bool)"
              },
              "valueType": {
                "id": 125,
                "name": "bool",
                "nodeType": "ElementaryTypeName",
                "src": "710:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 131,
            "name": "_mappingBoolToAddr",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "747:50:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bool_$_t_address_$",
              "typeString": "mapping(bool => address)"
            },
            "typeName": {
              "id": 130,
              "keyType": {
                "id": 128,
                "name": "bool",
                "nodeType": "ElementaryTypeName",
                "src": "755:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                }
              },
              "nodeType": "Mapping",
              "src": "747:24:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bool_$_t_address_$",
                "typeString": "mapping(bool => address)"
              },
              "valueType": {
                "id": 129,
                "name": "address",
                "nodeType": "ElementaryTypeName",
                "src": "763:7:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 137,
            "name": "_mappingBoolToMapping",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "803:65:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bool_$_t_mapping$_t_uint256_$_t_uint256_$_$",
              "typeString": "mapping(bool => mapping(uint256 => uint256))"
            },
            "typeName": {
              "id": 136,
              "keyType": {
                "id": 132,
                "name": "bool",
                "nodeType": "ElementaryTypeName",
                "src": "811:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                }
              },
              "nodeType": "Mapping",
              "src": "803:36:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bool_$_t_mapping$_t_uint256_$_t_uint256_$_$",
                "typeString": "mapping(bool => mapping(uint256 => uint256))"
              },
              "valueType": {
                "id": 135,
                "keyType": {
                  "id": 133,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "827:4:2",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "nodeType": "Mapping",
                "src": "819:19:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$",
                  "typeString": "mapping(uint256 => uint256)"
                },
                "valueType": {
                  "id": 134,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "833:4:2",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 142,
            "name": "_uintArray",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "897:32:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
              "typeString": "uint256[]"
            },
            "typeName": {
              "baseType": {
                "id": 138,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "897:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              },
              "id": 139,
              "length": null,
              "nodeType": "ArrayTypeName",
              "src": "897:6:2",
              "typeDescriptions": {
                "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                "typeString": "uint256[]"
              }
            },
            "value": {
              "argumentTypes": null,
              "components": [
                {
                  "argumentTypes": null,
                  "hexValue": "313030",
                  "id": 140,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "number",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "925:3:2",
                  "subdenomination": null,
                  "typeDescriptions": {
                    "typeIdentifier": "t_rational_100_by_1",
                    "typeString": "int_const 100"
                  },
                  "value": "100"
                }
              ],
              "id": 141,
              "isConstant": false,
              "isInlineArray": true,
              "isLValue": false,
              "isPure": true,
              "lValueRequested": false,
              "nodeType": "TupleExpression",
              "src": "924:5:2",
              "typeDescriptions": {
                "typeIdentifier": "t_array$_t_uint8_$1_memory_ptr",
                "typeString": "uint8[1] memory"
              }
            },
            "visibility": "public"
          },
          {
            "body": {
              "id": 153,
              "nodeType": "Block",
              "src": "1009:51:2",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 151,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "baseExpression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 145,
                          "name": "_mappingBoolToMapping",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 137,
                          "src": "1019:21:2",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bool_$_t_mapping$_t_uint256_$_t_uint256_$_$",
                            "typeString": "mapping(bool => mapping(uint256 => uint256))"
                          }
                        },
                        "id": 148,
                        "indexExpression": {
                          "argumentTypes": null,
                          "hexValue": "74727565",
                          "id": 146,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "bool",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "1041:4:2",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "value": "true"
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1019:27:2",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$",
                          "typeString": "mapping(uint256 => uint256)"
                        }
                      },
                      "id": 149,
                      "indexExpression": {
                        "argumentTypes": null,
                        "hexValue": "30",
                        "id": 147,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "1047:1:2",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_0_by_1",
                          "typeString": "int_const 0"
                        },
                        "value": "0"
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "nodeType": "IndexAccess",
                      "src": "1019:30:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "hexValue": "31",
                      "id": 150,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "1052:1:2",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_1_by_1",
                        "typeString": "int_const 1"
                      },
                      "value": "1"
                    },
                    "src": "1019:34:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 152,
                  "nodeType": "ExpressionStatement",
                  "src": "1019:34:2"
                }
              ]
            },
            "documentation": null,
            "id": 154,
            "implemented": true,
            "isConstructor": true,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "States",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 143,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "999:2:2"
            },
            "payable": false,
            "returnParameters": {
              "id": 144,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1009:0:2"
            },
            "scope": 165,
            "src": "984:76:2",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 163,
              "nodeType": "Block",
              "src": "1107:33:2",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 161,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 159,
                      "name": "_string",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 100,
                      "src": "1117:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage",
                        "typeString": "string storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 160,
                      "name": "change",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 156,
                      "src": "1127:6:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_memory_ptr",
                        "typeString": "string memory"
                      }
                    },
                    "src": "1117:16:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage",
                      "typeString": "string storage ref"
                    }
                  },
                  "id": 162,
                  "nodeType": "ExpressionStatement",
                  "src": "1117:16:2"
                }
              ]
            },
            "documentation": null,
            "id": 164,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "setString",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 157,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 156,
                  "name": "change",
                  "nodeType": "VariableDeclaration",
                  "scope": 164,
                  "src": "1085:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 155,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "1085:6:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1084:15:2"
            },
            "payable": false,
            "returnParameters": {
              "id": 158,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1107:0:2"
            },
            "scope": 165,
            "src": "1066:74:2",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          }
        ],
        "scope": 166,
        "src": "26:1116:2"
      }
    ],
    "src": "0:1142:2"
  },
  "legacyAST": {
    "absolutePath": "/home/ubuntu/dev/contract-state-util/contracts/States.sol",
    "exportedSymbols": {
      "States": [
        165
      ]
    },
    "id": 166,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 79,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".20"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:24:2"
      },
      {
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 165,
        "linearizedBaseContracts": [
          165
        ],
        "name": "States",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "constant": false,
            "id": 82,
            "name": "_int8",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "67:21:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_int8",
              "typeString": "int8"
            },
            "typeName": {
              "id": 80,
              "name": "int8",
              "nodeType": "ElementaryTypeName",
              "src": "67:4:2",
              "typeDescriptions": {
                "typeIdentifier": "t_int8",
                "typeString": "int8"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "30",
              "id": 81,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "87:1:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_0_by_1",
                "typeString": "int_const 0"
              },
              "value": "0"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 85,
            "name": "_int",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "94:19:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_int256",
              "typeString": "int256"
            },
            "typeName": {
              "id": 83,
              "name": "int",
              "nodeType": "ElementaryTypeName",
              "src": "94:3:2",
              "typeDescriptions": {
                "typeIdentifier": "t_int256",
                "typeString": "int256"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "30",
              "id": 84,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "112:1:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_0_by_1",
                "typeString": "int_const 0"
              },
              "value": "0"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 88,
            "name": "_uint8",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "138:23:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint8",
              "typeString": "uint8"
            },
            "typeName": {
              "id": 86,
              "name": "uint8",
              "nodeType": "ElementaryTypeName",
              "src": "138:5:2",
              "typeDescriptions": {
                "typeIdentifier": "t_uint8",
                "typeString": "uint8"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "30",
              "id": 87,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "160:1:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_0_by_1",
                "typeString": "int_const 0"
              },
              "value": "0"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 91,
            "name": "_uint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "167:21:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_uint256",
              "typeString": "uint256"
            },
            "typeName": {
              "id": 89,
              "name": "uint",
              "nodeType": "ElementaryTypeName",
              "src": "167:4:2",
              "typeDescriptions": {
                "typeIdentifier": "t_uint256",
                "typeString": "uint256"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "30",
              "id": 90,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "number",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "187:1:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_rational_0_by_1",
                "typeString": "int_const 0"
              },
              "value": "0"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 94,
            "name": "_address",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "213:30:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_address",
              "typeString": "address"
            },
            "typeName": {
              "id": 92,
              "name": "address",
              "nodeType": "ElementaryTypeName",
              "src": "213:7:2",
              "typeDescriptions": {
                "typeIdentifier": "t_address",
                "typeString": "address"
              }
            },
            "value": {
              "argumentTypes": null,
              "id": 93,
              "name": "this",
              "nodeType": "Identifier",
              "overloadedDeclarations": [],
              "referencedDeclaration": 197,
              "src": "239:4:2",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_States_$165",
                "typeString": "contract States"
              }
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 97,
            "name": "_bytes",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "267:27:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bytes_storage",
              "typeString": "bytes"
            },
            "typeName": {
              "id": 95,
              "name": "bytes",
              "nodeType": "ElementaryTypeName",
              "src": "267:5:2",
              "typeDescriptions": {
                "typeIdentifier": "t_bytes_storage_ptr",
                "typeString": "bytes"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "307830",
              "id": 96,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "string",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "289:5:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_stringliteral_77b7d82d931e1a403db0240b08c0716665eec4664af617c457918e4a67bc1810",
                "typeString": "literal_string \"0x0\""
              },
              "value": "0x0"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 100,
            "name": "_string",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "314:32:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_string_storage",
              "typeString": "string"
            },
            "typeName": {
              "id": 98,
              "name": "string",
              "nodeType": "ElementaryTypeName",
              "src": "314:6:2",
              "typeDescriptions": {
                "typeIdentifier": "t_string_storage_ptr",
                "typeString": "string"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "737472696e67",
              "id": 99,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "string",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "338:8:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_stringliteral_97fc46276c172633607a331542609db1e3da793fca183d594ed5a61803a10792",
                "typeString": "literal_string \"string\""
              },
              "value": "string"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 103,
            "name": "_bool",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "364:24:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_bool",
              "typeString": "bool"
            },
            "typeName": {
              "id": 101,
              "name": "bool",
              "nodeType": "ElementaryTypeName",
              "src": "364:4:2",
              "typeDescriptions": {
                "typeIdentifier": "t_bool",
                "typeString": "bool"
              }
            },
            "value": {
              "argumentTypes": null,
              "hexValue": "74727565",
              "id": 102,
              "isConstant": false,
              "isLValue": false,
              "isPure": true,
              "kind": "bool",
              "lValueRequested": false,
              "nodeType": "Literal",
              "src": "384:4:2",
              "subdenomination": null,
              "typeDescriptions": {
                "typeIdentifier": "t_bool",
                "typeString": "bool"
              },
              "value": "true"
            },
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 107,
            "name": "_mappingUintToUint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "419:47:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$",
              "typeString": "mapping(uint256 => uint256)"
            },
            "typeName": {
              "id": 106,
              "keyType": {
                "id": 104,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "427:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              },
              "nodeType": "Mapping",
              "src": "419:21:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$",
                "typeString": "mapping(uint256 => uint256)"
              },
              "valueType": {
                "id": 105,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "435:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 111,
            "name": "_mappingInttoUint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "472:45:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_int256_$_t_uint256_$",
              "typeString": "mapping(int256 => uint256)"
            },
            "typeName": {
              "id": 110,
              "keyType": {
                "id": 108,
                "name": "int",
                "nodeType": "ElementaryTypeName",
                "src": "480:3:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_int256",
                  "typeString": "int256"
                }
              },
              "nodeType": "Mapping",
              "src": "472:20:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_int256_$_t_uint256_$",
                "typeString": "mapping(int256 => uint256)"
              },
              "valueType": {
                "id": 109,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "487:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 115,
            "name": "_mappingBytes32ToUint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "523:53:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
              "typeString": "mapping(bytes32 => uint256)"
            },
            "typeName": {
              "id": 114,
              "keyType": {
                "id": 112,
                "name": "bytes32",
                "nodeType": "ElementaryTypeName",
                "src": "531:7:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bytes32",
                  "typeString": "bytes32"
                }
              },
              "nodeType": "Mapping",
              "src": "523:24:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$",
                "typeString": "mapping(bytes32 => uint256)"
              },
              "valueType": {
                "id": 113,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "542:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 119,
            "name": "_mappingAddressToUint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "582:53:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
              "typeString": "mapping(address => uint256)"
            },
            "typeName": {
              "id": 118,
              "keyType": {
                "id": 116,
                "name": "address",
                "nodeType": "ElementaryTypeName",
                "src": "590:7:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                }
              },
              "nodeType": "Mapping",
              "src": "582:24:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                "typeString": "mapping(address => uint256)"
              },
              "valueType": {
                "id": 117,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "601:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 123,
            "name": "_mappingBoolToUint",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "641:47:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bool_$_t_uint256_$",
              "typeString": "mapping(bool => uint256)"
            },
            "typeName": {
              "id": 122,
              "keyType": {
                "id": 120,
                "name": "bool",
                "nodeType": "ElementaryTypeName",
                "src": "649:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                }
              },
              "nodeType": "Mapping",
              "src": "641:21:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bool_$_t_uint256_$",
                "typeString": "mapping(bool => uint256)"
              },
              "valueType": {
                "id": 121,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "657:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 127,
            "name": "_mappingBoolToBool",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "694:47:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bool_$_t_bool_$",
              "typeString": "mapping(bool => bool)"
            },
            "typeName": {
              "id": 126,
              "keyType": {
                "id": 124,
                "name": "bool",
                "nodeType": "ElementaryTypeName",
                "src": "702:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                }
              },
              "nodeType": "Mapping",
              "src": "694:21:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bool_$_t_bool_$",
                "typeString": "mapping(bool => bool)"
              },
              "valueType": {
                "id": 125,
                "name": "bool",
                "nodeType": "ElementaryTypeName",
                "src": "710:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 131,
            "name": "_mappingBoolToAddr",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "747:50:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bool_$_t_address_$",
              "typeString": "mapping(bool => address)"
            },
            "typeName": {
              "id": 130,
              "keyType": {
                "id": 128,
                "name": "bool",
                "nodeType": "ElementaryTypeName",
                "src": "755:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                }
              },
              "nodeType": "Mapping",
              "src": "747:24:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bool_$_t_address_$",
                "typeString": "mapping(bool => address)"
              },
              "valueType": {
                "id": 129,
                "name": "address",
                "nodeType": "ElementaryTypeName",
                "src": "763:7:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_address",
                  "typeString": "address"
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 137,
            "name": "_mappingBoolToMapping",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "803:65:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_mapping$_t_bool_$_t_mapping$_t_uint256_$_t_uint256_$_$",
              "typeString": "mapping(bool => mapping(uint256 => uint256))"
            },
            "typeName": {
              "id": 136,
              "keyType": {
                "id": 132,
                "name": "bool",
                "nodeType": "ElementaryTypeName",
                "src": "811:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_bool",
                  "typeString": "bool"
                }
              },
              "nodeType": "Mapping",
              "src": "803:36:2",
              "typeDescriptions": {
                "typeIdentifier": "t_mapping$_t_bool_$_t_mapping$_t_uint256_$_t_uint256_$_$",
                "typeString": "mapping(bool => mapping(uint256 => uint256))"
              },
              "valueType": {
                "id": 135,
                "keyType": {
                  "id": 133,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "827:4:2",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                },
                "nodeType": "Mapping",
                "src": "819:19:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$",
                  "typeString": "mapping(uint256 => uint256)"
                },
                "valueType": {
                  "id": 134,
                  "name": "uint",
                  "nodeType": "ElementaryTypeName",
                  "src": "833:4:2",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  }
                }
              }
            },
            "value": null,
            "visibility": "public"
          },
          {
            "constant": false,
            "id": 142,
            "name": "_uintArray",
            "nodeType": "VariableDeclaration",
            "scope": 165,
            "src": "897:32:2",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
              "typeString": "uint256[]"
            },
            "typeName": {
              "baseType": {
                "id": 138,
                "name": "uint",
                "nodeType": "ElementaryTypeName",
                "src": "897:4:2",
                "typeDescriptions": {
                  "typeIdentifier": "t_uint256",
                  "typeString": "uint256"
                }
              },
              "id": 139,
              "length": null,
              "nodeType": "ArrayTypeName",
              "src": "897:6:2",
              "typeDescriptions": {
                "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                "typeString": "uint256[]"
              }
            },
            "value": {
              "argumentTypes": null,
              "components": [
                {
                  "argumentTypes": null,
                  "hexValue": "313030",
                  "id": 140,
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "kind": "number",
                  "lValueRequested": false,
                  "nodeType": "Literal",
                  "src": "925:3:2",
                  "subdenomination": null,
                  "typeDescriptions": {
                    "typeIdentifier": "t_rational_100_by_1",
                    "typeString": "int_const 100"
                  },
                  "value": "100"
                }
              ],
              "id": 141,
              "isConstant": false,
              "isInlineArray": true,
              "isLValue": false,
              "isPure": true,
              "lValueRequested": false,
              "nodeType": "TupleExpression",
              "src": "924:5:2",
              "typeDescriptions": {
                "typeIdentifier": "t_array$_t_uint8_$1_memory_ptr",
                "typeString": "uint8[1] memory"
              }
            },
            "visibility": "public"
          },
          {
            "body": {
              "id": 153,
              "nodeType": "Block",
              "src": "1009:51:2",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 151,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "baseExpression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 145,
                          "name": "_mappingBoolToMapping",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 137,
                          "src": "1019:21:2",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bool_$_t_mapping$_t_uint256_$_t_uint256_$_$",
                            "typeString": "mapping(bool => mapping(uint256 => uint256))"
                          }
                        },
                        "id": 148,
                        "indexExpression": {
                          "argumentTypes": null,
                          "hexValue": "74727565",
                          "id": 146,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "kind": "bool",
                          "lValueRequested": false,
                          "nodeType": "Literal",
                          "src": "1041:4:2",
                          "subdenomination": null,
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "value": "true"
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1019:27:2",
                        "typeDescriptions": {
                          "typeIdentifier": "t_mapping$_t_uint256_$_t_uint256_$",
                          "typeString": "mapping(uint256 => uint256)"
                        }
                      },
                      "id": 149,
                      "indexExpression": {
                        "argumentTypes": null,
                        "hexValue": "30",
                        "id": 147,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": true,
                        "kind": "number",
                        "lValueRequested": false,
                        "nodeType": "Literal",
                        "src": "1047:1:2",
                        "subdenomination": null,
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_0_by_1",
                          "typeString": "int_const 0"
                        },
                        "value": "0"
                      },
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "nodeType": "IndexAccess",
                      "src": "1019:30:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "hexValue": "31",
                      "id": 150,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "1052:1:2",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_1_by_1",
                        "typeString": "int_const 1"
                      },
                      "value": "1"
                    },
                    "src": "1019:34:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 152,
                  "nodeType": "ExpressionStatement",
                  "src": "1019:34:2"
                }
              ]
            },
            "documentation": null,
            "id": 154,
            "implemented": true,
            "isConstructor": true,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "States",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 143,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "999:2:2"
            },
            "payable": false,
            "returnParameters": {
              "id": 144,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1009:0:2"
            },
            "scope": 165,
            "src": "984:76:2",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 163,
              "nodeType": "Block",
              "src": "1107:33:2",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 161,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "id": 159,
                      "name": "_string",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 100,
                      "src": "1117:7:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_storage",
                        "typeString": "string storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 160,
                      "name": "change",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 156,
                      "src": "1127:6:2",
                      "typeDescriptions": {
                        "typeIdentifier": "t_string_memory_ptr",
                        "typeString": "string memory"
                      }
                    },
                    "src": "1117:16:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage",
                      "typeString": "string storage ref"
                    }
                  },
                  "id": 162,
                  "nodeType": "ExpressionStatement",
                  "src": "1117:16:2"
                }
              ]
            },
            "documentation": null,
            "id": 164,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "setString",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 157,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 156,
                  "name": "change",
                  "nodeType": "VariableDeclaration",
                  "scope": 164,
                  "src": "1085:13:2",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_string_memory_ptr",
                    "typeString": "string"
                  },
                  "typeName": {
                    "id": 155,
                    "name": "string",
                    "nodeType": "ElementaryTypeName",
                    "src": "1085:6:2",
                    "typeDescriptions": {
                      "typeIdentifier": "t_string_storage_ptr",
                      "typeString": "string"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1084:15:2"
            },
            "payable": false,
            "returnParameters": {
              "id": 158,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1107:0:2"
            },
            "scope": 165,
            "src": "1066:74:2",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          }
        ],
        "scope": 166,
        "src": "26:1116:2"
      }
    ],
    "src": "0:1142:2"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.23+commit.124ca40d.Emscripten.clang"
  },
  "networks": {
    "4447": {
      "events": {},
      "links": {},
      "address": "0x345ca3e014aaf5dca488057592ee47305d9b3e10",
      "transactionHash": "0xa93a191b83914bf64b8727ada4a7541c213c1a178c7812761f499dcf0518dda8"
    }
  },
  "schemaVersion": "2.0.0",
  "updatedAt": "2018-05-06T04:45:21.304Z"
}