{
  "contractName": "RICO",
  "abi": [
    {
      "constant": true,
      "inputs": [
        {
          "name": "_token",
          "type": "address"
        }
      ],
      "name": "getTokenPods",
      "outputs": [
        {
          "name": "",
          "type": "address[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "name",
      "outputs": [
        {
          "name": "",
          "type": "string"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_name",
          "type": "string"
        },
        {
          "name": "_symbol",
          "type": "string"
        },
        {
          "name": "_decimals",
          "type": "uint8"
        },
        {
          "name": "_pods",
          "type": "address[]"
        },
        {
          "name": "_projectOwner",
          "type": "address"
        }
      ],
      "name": "newProject",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "tokens",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "version",
      "outputs": [
        {
          "name": "",
          "type": "string"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_tokenAddr",
          "type": "address"
        },
        {
          "name": "_index",
          "type": "uint256"
        },
        {
          "name": "_user",
          "type": "address"
        }
      ],
      "name": "mintToken",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_token",
          "type": "address"
        }
      ],
      "name": "tokenTransfer",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "name": "maxSupplies",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "name",
          "type": "string"
        },
        {
          "indexed": false,
          "name": "symbol",
          "type": "string"
        },
        {
          "indexed": false,
          "name": "decimals",
          "type": "uint8"
        },
        {
          "indexed": false,
          "name": "supply",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "pods",
          "type": "address[]"
        },
        {
          "indexed": false,
          "name": "token",
          "type": "address"
        }
      ],
      "name": "CreatedNewProject",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "pod",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "supply",
          "type": "uint256"
        }
      ],
      "name": "CheckedPodsToken",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "previousOwner",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferred",
      "type": "event"
    }
  ],
  "bytecode": "0x60606040526040805190810160405280600d81526020017f5249434f20636f6e7472616374000000000000000000000000000000000000008152506001908051906020019062000051929190620000f2565b506040805190810160405280600581526020017f302e392e33000000000000000000000000000000000000000000000000000000815250600290805190602001906200009f929190620000f2565b503415620000ac57600080fd5b336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001a1565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200013557805160ff191683800117855562000166565b8280016001018555821562000166579182015b828111156200016557825182559160200191906001019062000148565b5b50905062000175919062000179565b5090565b6200019e91905b808211156200019a57600081600090555060010162000180565b5090565b90565b612f8080620001b16000396000f3006060604052600436106100a4576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305ef6848146100a957806306fdde03146101375780631db4012d146101c55780634f64b2be1461031057806354fd4d50146103735780636dfada86146104015780638d956f1e1461047a5780638da5cb5b146104b3578063932852af14610508578063f2fde38b14610555575b600080fd5b34156100b457600080fd5b6100e0600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061058e565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610123578082015181840152602081019050610108565b505050509050019250505060405180910390f35b341561014257600080fd5b61014a610661565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561018a57808201518184015260208101905061016f565b50505050905090810190601f1680156101b75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101d057600080fd5b6102ce600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803560ff169060200190919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506106ff565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561031b57600080fd5b6103316004808035906020019091905050610b8a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037e57600080fd5b610386610bc9565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103c65780820151818401526020810190506103ab565b50505050905090810190601f1680156103f35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561040c57600080fd5b610460600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610c67565b604051808215151515815260200191505060405180910390f35b341561048557600080fd5b6104b1600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506110ba565b005b34156104be57600080fd5b6104c66112c8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561051357600080fd5b61053f600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506112ed565b6040518082815260200191505060405180910390f35b341561056057600080fd5b61058c600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611305565b005b61059661166a565b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561065557602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161060b575b50505050509050919050565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106f75780601f106106cc576101008083540402835291602001916106f7565b820191906000526020600020905b8154815290600101906020018083116106da57829003601f168201915b505050505081565b600080600061070d8561145a565b915060008211151561071e57600080fd5b61072661167e565b604051809103906000f080151561073c57600080fd5b90508073ffffffffffffffffffffffffffffffffffffffff166398cbefbe898989886000604051602001526040518563ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001806020018560ff1660ff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838103835287818151815260200191508051906020019080838360005b838110156108145780820151818401526020810190506107f9565b50505050905090810190601f1680156108415780820380516001836020036101000a031916815260200191505b50838103825286818151815260200191508051906020019080838360005b8381101561087a57808201518184015260208101905061085f565b50505050905090810190601f1680156108a75780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b15156108c957600080fd5b6102c65a03f115156108da57600080fd5b505050604051805190505084600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020908051906020019061093892919061168e565b5081600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600380548060010182816109919190611718565b9160005260206000209001600083909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550507f3c2cba77c9f52a23d345af4adc0a71124e8121df1f17d857055c2e3c08e74b438888888589866040518080602001806020018760ff1660ff168152602001868152602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184810384528a818151815260200191508051906020019080838360005b83811015610a93578082015181840152602081019050610a78565b50505050905090810190601f168015610ac05780820380516001836020036101000a031916815260200191505b50848103835289818151815260200191508051906020019080838360005b83811015610af9578082015181840152602081019050610ade565b50505050905090810190601f168015610b265780820380516001836020036101000a031916815260200191505b50848103825286818151815260200191508051906020019060200280838360005b83811015610b62578082015181840152602081019050610b47565b50505050905001995050505050505050505060405180910390a1809250505095945050505050565b600381815481101515610b9957fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60028054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c5f5780601f10610c3457610100808354040283529160200191610c5f565b820191906000526020600020905b815481529060010190602001808311610c4257829003601f168201915b505050505081565b600080600080600033935060008673ffffffffffffffffffffffffffffffffffffffff16141515610c96578593505b6000600460008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002088815481101515610ce457fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151515610d3357600080fd5b600460008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002087815481101515610d7f57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1692508273ffffffffffffffffffffffffffffffffffffffff16638f85f92c6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e1957600080fd5b6102c65a03f11515610e2a57600080fd5b505050604051805190501515610e3f57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166383786f8c856000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610ee257600080fd5b6102c65a03f11515610ef357600080fd5b505050604051805190509150600082111515610f0e57600080fd5b8790508073ffffffffffffffffffffffffffffffffffffffff166340c10f1985846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515610fbc57600080fd5b6102c65a03f11515610fcd57600080fd5b505050604051805190501515610fe257600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663112ed3f5856000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561108557600080fd5b6102c65a03f1151561109657600080fd5b5050506040518051905015156110ab57600080fd5b60019450505050509392505050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561111857600080fd5b8291508173ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156111be57600080fd5b6102c65a03f115156111cf57600080fd5b5050506040518051905090508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156112a757600080fd5b6102c65a03f115156112b857600080fd5b5050506040518051905050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60056020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561136057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561139c57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008060008060008060009450600093505b865184101561163e57868481518110151561148357fe5b9060200190602002015192508291508173ffffffffffffffffffffffffffffffffffffffff16639b3dfce06000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15156114fe57600080fd5b6102c65a03f1151561150f57600080fd5b5050506040518051905015156115285760009550611642565b8173ffffffffffffffffffffffffffffffffffffffff166397722acf6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561159457600080fd5b6102c65a03f115156115a557600080fd5b5050506040518051905090506115c4818661164c90919063ffffffff16565b94507f73d563903347723905a32c77ec9e60577b6f569b3cbcb367d71dd532c52d469f8282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1838060010194505061146c565b8495505b5050505050919050565b600080828401905083811015151561166057fe5b8091505092915050565b602060405190810160405280600081525090565b6040516117a8806117ad83390190565b828054828255906000526020600020908101928215611707579160200282015b828111156117065782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550916020019190600101906116ae565b5b5090506117149190611744565b5090565b81548183558181151161173f5781836000526020600020918201910161173e9190611787565b5b505050565b61178491905b8082111561178057600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555060010161174a565b5090565b90565b6117a991905b808211156117a557600081600090555060010161178d565b5090565b90560060606040526000600360146101000a81548160ff0219169083151502179055506000600360156101000a81548160ff021916908315150217905550341561004557600080fd5b33600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611713806100956000396000f3006060604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305d2035b1461010157806306fdde031461012e578063095ea7b3146101bc578063158ef93e1461021657806318160ddd1461024357806323b872dd1461026c578063313ce567146102e557806340c10f191461031457806370a082311461036e5780637d64bcb4146103bb5780638d956f1e146103e85780638da5cb5b1461043957806395d89b411461048e57806398cbefbe1461051c578063a4475ce4146105ff578063a9059cbb14610654578063dd62ed3e146106ae578063f2fde38b1461071a575b600080fd5b341561010c57600080fd5b610114610753565b604051808215151515815260200191505060405180910390f35b341561013957600080fd5b610141610766565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610181578082015181840152602081019050610166565b50505050905090810190601f1680156101ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101c757600080fd5b6101fc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610804565b604051808215151515815260200191505060405180910390f35b341561022157600080fd5b6102296108f6565b604051808215151515815260200191505060405180910390f35b341561024e57600080fd5b610256610909565b6040518082815260200191505060405180910390f35b341561027757600080fd5b6102cb600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061090f565b604051808215151515815260200191505060405180910390f35b34156102f057600080fd5b6102f8610ba9565b604051808260ff1660ff16815260200191505060405180910390f35b341561031f57600080fd5b610354600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610bbc565b604051808215151515815260200191505060405180910390f35b341561037957600080fd5b6103a5600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610da4565b6040518082815260200191505060405180910390f35b34156103c657600080fd5b6103ce610ded565b604051808215151515815260200191505060405180910390f35b34156103f357600080fd5b61041f600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610eb5565b604051808215151515815260200191505060405180910390f35b341561044457600080fd5b61044c6110c9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561049957600080fd5b6104a16110ef565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104e15780820151818401526020810190506104c6565b50505050905090810190601f16801561050e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561052757600080fd5b6105e5600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803560ff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061118d565b604051808215151515815260200191505060405180910390f35b341561060a57600080fd5b6106126112c6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561065f57600080fd5b610694600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506112ec565b604051808215151515815260200191505060405180910390f35b34156106b957600080fd5b610704600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611445565b6040518082815260200191505060405180910390f35b341561072557600080fd5b610751600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506114cc565b005b600360149054906101000a900460ff1681565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107fc5780601f106107d1576101008083540402835291602001916107fc565b820191906000526020600020905b8154815290600101906020018083116107df57829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600360159054906101000a900460ff1681565b60005481565b600080600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156109e05750828110155b15156109eb57600080fd5b82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555082600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811015610b385782600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600660009054906101000a900460ff1681565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c1a57600080fd5b600360149054906101000a900460ff16151515610c3657600080fd5b610c4b8260005461162490919063ffffffff16565b600081905550610ca382600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461162490919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885836040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360149054906101000a900460ff16151515610e0b57600080fd5b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6757600080fd5b6001600360146101000a81548160ff0219169083151502179055507fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a16001905090565b6000806000600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f1657600080fd5b8391508173ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610fbc57600080fd5b6102c65a03f11515610fcd57600080fd5b5050506040518051905090508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156110a657600080fd5b6102c65a03f115156110b757600080fd5b50505060405180519050505050919050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111855780601f1061115a57610100808354040283529160200191611185565b820191906000526020600020905b81548152906001019060200180831161116857829003601f168201915b505050505081565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111eb57600080fd5b600360159054906101000a900460ff1615151561120757600080fd5b846004908051906020019061121d929190611642565b508360059080519060200190611234929190611642565b5082600660006101000a81548160ff021916908360ff16021790555081600660016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600360156101000a81548160ff021916908315150217905550600360159054906101000a900460ff169050949350505050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561133c57600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561152857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561156457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080828401905083811015151561163857fe5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061168357805160ff19168380011785556116b1565b828001600101855582156116b1579182015b828111156116b0578251825591602001919060010190611695565b5b5090506116be91906116c2565b5090565b6116e491905b808211156116e05760008160009055506001016116c8565b5090565b905600a165627a7a72305820792750438f46d36f5264427237c0631cc33de2a9c0fe75ea9d1d400ecd01cece0029a165627a7a72305820b2a2caed854867de26475862aa3488423dba1a656fc4303505ef27122d4a566d0029",
  "deployedBytecode": "0x6060604052600436106100a4576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305ef6848146100a957806306fdde03146101375780631db4012d146101c55780634f64b2be1461031057806354fd4d50146103735780636dfada86146104015780638d956f1e1461047a5780638da5cb5b146104b3578063932852af14610508578063f2fde38b14610555575b600080fd5b34156100b457600080fd5b6100e0600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061058e565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b83811015610123578082015181840152602081019050610108565b505050509050019250505060405180910390f35b341561014257600080fd5b61014a610661565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561018a57808201518184015260208101905061016f565b50505050905090810190601f1680156101b75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101d057600080fd5b6102ce600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803560ff169060200190919080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509190803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506106ff565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561031b57600080fd5b6103316004808035906020019091905050610b8a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561037e57600080fd5b610386610bc9565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103c65780820151818401526020810190506103ab565b50505050905090810190601f1680156103f35780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561040c57600080fd5b610460600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610c67565b604051808215151515815260200191505060405180910390f35b341561048557600080fd5b6104b1600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506110ba565b005b34156104be57600080fd5b6104c66112c8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561051357600080fd5b61053f600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506112ed565b6040518082815260200191505060405180910390f35b341561056057600080fd5b61058c600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611305565b005b61059661166a565b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002080548060200260200160405190810160405280929190818152602001828054801561065557602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161060b575b50505050509050919050565b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156106f75780601f106106cc576101008083540402835291602001916106f7565b820191906000526020600020905b8154815290600101906020018083116106da57829003601f168201915b505050505081565b600080600061070d8561145a565b915060008211151561071e57600080fd5b61072661167e565b604051809103906000f080151561073c57600080fd5b90508073ffffffffffffffffffffffffffffffffffffffff166398cbefbe898989886000604051602001526040518563ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018080602001806020018560ff1660ff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838103835287818151815260200191508051906020019080838360005b838110156108145780820151818401526020810190506107f9565b50505050905090810190601f1680156108415780820380516001836020036101000a031916815260200191505b50838103825286818151815260200191508051906020019080838360005b8381101561087a57808201518184015260208101905061085f565b50505050905090810190601f1680156108a75780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b15156108c957600080fd5b6102c65a03f115156108da57600080fd5b505050604051805190505084600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020908051906020019061093892919061168e565b5081600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600380548060010182816109919190611718565b9160005260206000209001600083909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550507f3c2cba77c9f52a23d345af4adc0a71124e8121df1f17d857055c2e3c08e74b438888888589866040518080602001806020018760ff1660ff168152602001868152602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184810384528a818151815260200191508051906020019080838360005b83811015610a93578082015181840152602081019050610a78565b50505050905090810190601f168015610ac05780820380516001836020036101000a031916815260200191505b50848103835289818151815260200191508051906020019080838360005b83811015610af9578082015181840152602081019050610ade565b50505050905090810190601f168015610b265780820380516001836020036101000a031916815260200191505b50848103825286818151815260200191508051906020019060200280838360005b83811015610b62578082015181840152602081019050610b47565b50505050905001995050505050505050505060405180910390a1809250505095945050505050565b600381815481101515610b9957fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60028054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c5f5780601f10610c3457610100808354040283529160200191610c5f565b820191906000526020600020905b815481529060010190602001808311610c4257829003601f168201915b505050505081565b600080600080600033935060008673ffffffffffffffffffffffffffffffffffffffff16141515610c96578593505b6000600460008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002088815481101515610ce457fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614151515610d3357600080fd5b600460008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002087815481101515610d7f57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1692508273ffffffffffffffffffffffffffffffffffffffff16638f85f92c6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1515610e1957600080fd5b6102c65a03f11515610e2a57600080fd5b505050604051805190501515610e3f57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166383786f8c856000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610ee257600080fd5b6102c65a03f11515610ef357600080fd5b505050604051805190509150600082111515610f0e57600080fd5b8790508073ffffffffffffffffffffffffffffffffffffffff166340c10f1985846000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1515610fbc57600080fd5b6102c65a03f11515610fcd57600080fd5b505050604051805190501515610fe257600080fd5b8273ffffffffffffffffffffffffffffffffffffffff1663112ed3f5856000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b151561108557600080fd5b6102c65a03f1151561109657600080fd5b5050506040518051905015156110ab57600080fd5b60019450505050509392505050565b6000806000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561111857600080fd5b8291508173ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15156111be57600080fd5b6102c65a03f115156111cf57600080fd5b5050506040518051905090508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156112a757600080fd5b6102c65a03f115156112b857600080fd5b5050506040518051905050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60056020528060005260406000206000915090505481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561136057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561139c57600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008060008060008060009450600093505b865184101561163e57868481518110151561148357fe5b9060200190602002015192508291508173ffffffffffffffffffffffffffffffffffffffff16639b3dfce06000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15156114fe57600080fd5b6102c65a03f1151561150f57600080fd5b5050506040518051905015156115285760009550611642565b8173ffffffffffffffffffffffffffffffffffffffff166397722acf6000604051602001526040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b151561159457600080fd5b6102c65a03f115156115a557600080fd5b5050506040518051905090506115c4818661164c90919063ffffffff16565b94507f73d563903347723905a32c77ec9e60577b6f569b3cbcb367d71dd532c52d469f8282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1838060010194505061146c565b8495505b5050505050919050565b600080828401905083811015151561166057fe5b8091505092915050565b602060405190810160405280600081525090565b6040516117a8806117ad83390190565b828054828255906000526020600020908101928215611707579160200282015b828111156117065782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550916020019190600101906116ae565b5b5090506117149190611744565b5090565b81548183558181151161173f5781836000526020600020918201910161173e9190611787565b5b505050565b61178491905b8082111561178057600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690555060010161174a565b5090565b90565b6117a991905b808211156117a557600081600090555060010161178d565b5090565b90560060606040526000600360146101000a81548160ff0219169083151502179055506000600360156101000a81548160ff021916908315150217905550341561004557600080fd5b33600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611713806100956000396000f3006060604052600436106100fc576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806305d2035b1461010157806306fdde031461012e578063095ea7b3146101bc578063158ef93e1461021657806318160ddd1461024357806323b872dd1461026c578063313ce567146102e557806340c10f191461031457806370a082311461036e5780637d64bcb4146103bb5780638d956f1e146103e85780638da5cb5b1461043957806395d89b411461048e57806398cbefbe1461051c578063a4475ce4146105ff578063a9059cbb14610654578063dd62ed3e146106ae578063f2fde38b1461071a575b600080fd5b341561010c57600080fd5b610114610753565b604051808215151515815260200191505060405180910390f35b341561013957600080fd5b610141610766565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610181578082015181840152602081019050610166565b50505050905090810190601f1680156101ae5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34156101c757600080fd5b6101fc600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610804565b604051808215151515815260200191505060405180910390f35b341561022157600080fd5b6102296108f6565b604051808215151515815260200191505060405180910390f35b341561024e57600080fd5b610256610909565b6040518082815260200191505060405180910390f35b341561027757600080fd5b6102cb600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190505061090f565b604051808215151515815260200191505060405180910390f35b34156102f057600080fd5b6102f8610ba9565b604051808260ff1660ff16815260200191505060405180910390f35b341561031f57600080fd5b610354600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091908035906020019091905050610bbc565b604051808215151515815260200191505060405180910390f35b341561037957600080fd5b6103a5600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610da4565b6040518082815260200191505060405180910390f35b34156103c657600080fd5b6103ce610ded565b604051808215151515815260200191505060405180910390f35b34156103f357600080fd5b61041f600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610eb5565b604051808215151515815260200191505060405180910390f35b341561044457600080fd5b61044c6110c9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561049957600080fd5b6104a16110ef565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104e15780820151818401526020810190506104c6565b50505050905090810190601f16801561050e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b341561052757600080fd5b6105e5600480803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190803560ff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff1690602001909190505061118d565b604051808215151515815260200191505060405180910390f35b341561060a57600080fd5b6106126112c6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561065f57600080fd5b610694600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919080359060200190919050506112ec565b604051808215151515815260200191505060405180910390f35b34156106b957600080fd5b610704600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611445565b6040518082815260200191505060405180910390f35b341561072557600080fd5b610751600480803573ffffffffffffffffffffffffffffffffffffffff169060200190919050506114cc565b005b600360149054906101000a900460ff1681565b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107fc5780601f106107d1576101008083540402835291602001916107fc565b820191906000526020600020905b8154815290600101906020018083116107df57829003601f168201915b505050505081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600360159054906101000a900460ff1681565b60005481565b600080600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156109e05750828110155b15156109eb57600080fd5b82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555082600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff811015610b385782600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600660009054906101000a900460ff1681565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c1a57600080fd5b600360149054906101000a900460ff16151515610c3657600080fd5b610c4b8260005461162490919063ffffffff16565b600081905550610ca382600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461162490919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff167f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885836040518082815260200191505060405180910390a28273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600360149054906101000a900460ff16151515610e0b57600080fd5b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610e6757600080fd5b6001600360146101000a81548160ff0219169083151502179055507fae5184fba832cb2b1f702aca6117b8d265eaf03ad33eb133f19dde0f5920fa0860405160405180910390a16001905090565b6000806000600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f1657600080fd5b8391508173ffffffffffffffffffffffffffffffffffffffff166370a08231306000604051602001526040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b1515610fbc57600080fd5b6102c65a03f11515610fcd57600080fd5b5050506040518051905090508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836000604051602001526040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15156110a657600080fd5b6102c65a03f115156110b757600080fd5b50505060405180519050505050919050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111855780601f1061115a57610100808354040283529160200191611185565b820191906000526020600020905b81548152906001019060200180831161116857829003601f168201915b505050505081565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156111eb57600080fd5b600360159054906101000a900460ff1615151561120757600080fd5b846004908051906020019061121d929190611642565b508360059080519060200190611234929190611642565b5082600660006101000a81548160ff021916908360ff16021790555081600660016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600360156101000a81548160ff021916908315150217905550600360159054906101000a900460ff169050949350505050565b600660019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600081600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561133c57600080fd5b81600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561152857600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415151561156457600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600080828401905083811015151561163857fe5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061168357805160ff19168380011785556116b1565b828001600101855582156116b1579182015b828111156116b0578251825591602001919060010190611695565b5b5090506116be91906116c2565b5090565b6116e491905b808211156116e05760008160009055506001016116c8565b5090565b905600a165627a7a72305820792750438f46d36f5264427237c0631cc33de2a9c0fe75ea9d1d400ecd01cece0029a165627a7a72305820b2a2caed854867de26475862aa3488423dba1a656fc4303505ef27122d4a566d0029",
  "sourceMap": "550:3361:15:-;;;855:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;895:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1084:26;;;;;;;;603:10:9;595:5;;:18;;;;;;;;;;;;;;;;;;550:3361:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;",
  "deployedSourceMap": "550:3361:15:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3798:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;855:36:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1488:598:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;931:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;895:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2900:564:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3530:201;;;;;;;;;;;;;;;;;;;;;;;;;;;;334:20:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1004:46:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;928:169:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;3798:111:15;3861:9;;:::i;:::-;3885:11;:19;3897:6;3885:19;;;;;;;;;;;;;;;3878:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3798:111;;;:::o;855:36::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1488:598::-;1641:7;1659:19;1778;1681:16;1691:5;1681:9;:16::i;:::-;1659:38;;1726:1;1712:11;:15;1704:24;;;;;;;;1800:19;;:::i;:::-;;;;;;;;;;;;;;;;;;1778:41;;1826:5;:10;;;1837:5;1844:7;1853:9;1864:13;1826:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1826:52:15;1906:5;1885:11;:18;1897:5;1885:18;;;;;;;;;;;;;;;:26;;;;;;;;;;;;:::i;:::-;;1939:11;1918;:18;1930:5;1918:18;;;;;;;;;;;;;;;:32;;;;1957:6;:18;;;;;;;;;;;:::i;:::-;;;;;;;;;;1969:5;1957:18;;;;;;;;;;;;;;;;;;;;;;;1982:71;2000:5;2007:7;2016:9;2027:11;2040:5;2047;1982:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;;;;;;;;2075:5:15;2060:21;;1488:598;;;;;;;;;:::o;931:23::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;895:31::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2900:564::-;2982:4;2995:12;3133:10;3224:18;3309:19;3010:10;2995:25;;3041:3;3032:5;:12;;;;3028:45;;;3061:5;3054:12;;3028:45;3122:3;3087:11;:23;3099:10;3087:23;;;;;;;;;;;;;;;3111:6;3087:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;:38;;;;3079:47;;;;;;;;3153:11;:23;3165:10;3153:23;;;;;;;;;;;;;;;3177:6;3153:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;3133:52;;3200:3;:14;;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3192:25;;;;;;;;3245:3;:21;;;3267:4;3245:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3224:48;;3300:1;3287:10;:14;3279:23;;;;;;;;3345:10;3309:47;;3371:5;:10;;;3382:4;3388:10;3371:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3363:37;;;;;;;;3415:3;:19;;;3435:4;3415:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3407:34;;;;;;;;3455:4;3448:11;;2900:564;;;;;;;;;:::o;3530:201::-;3599:19;3649:12;748:5:9;;;;;;;;;;;734:19;;:10;:19;;;726:28;;;;;;;;3635:6:15;3599:43;;3664:5;:15;;;3680:4;3664:21;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3649:36;;3696:5;:14;;;3711:5;;;;;;;;;;;3718:7;3696:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3530:201;;;:::o;334:20:9:-;;;;;;;;;;;;;:::o;1004:46:15:-;;;;;;;;;;;;;;;;;:::o;928:169:9:-;748:5;;;;;;;;;;;734:19;;:10;:19;;;726:28;;;;;;;;1024:1;1004:22;;:8;:22;;;;996:31;;;;;;;;1061:8;1033:37;;1054:5;;;;;;;;;;;1033:37;;;;;;;;;;;;1084:8;1076:5;;:16;;;;;;;;;;;;;;;;;;928:169;:::o;2216:440:15:-;2270:7;2285:17;2317:6;2360:15;2394:10;2487:18;2305:1;2285:21;;2326:1;2317:10;;2312:317;2333:5;:12;2329:1;:16;2312:317;;;2378:5;2384:1;2378:8;;;;;;;;;;;;;;;;;;2360:26;;2414:7;2394:28;;2436:3;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2435:19;2431:41;;;2471:1;2464:8;;;;2431:41;2508:3;:17;;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2487:40;;2547:25;2561:10;2547:9;:13;;:25;;;;:::i;:::-;2535:37;;2580:42;2605:3;2611:10;2580:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;2347:3;;;;;;;2312:317;;;2642:9;2635:16;;2216:440;;;;;;;;;:::o;759:128:16:-;816:7;831:9;847:1;843;:5;831:17;;866:1;861;:6;;854:14;;;;;;881:1;874:8;;759:128;;;;;:::o;550:3361:15:-;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
  "source": "pragma solidity ^0.4.18;\nimport \"./MintableToken.sol\";\nimport \"./AbsPoD.sol\";\n\n/// @title RICO - Responsible Initial Coin Offering\n/// @author - Yusaku Senga - <senga@dri.network>\n/// license - Please check the LICENSE at github.com/DRI-network/RICO\n\n/**\n * @title   RICO\n * @dev     Handles the minting of the Tokens.\n *          RICO.sol, Launcher.sol and ContractManager.sol, are the three contracts\n *          that have to be deployed on the network on beforehand.\n *          Please see the 2_deploy_contracts.js migration for the details.\n */\ncontract RICO is Ownable {\n  /// using safemath\n  using SafeMath for uint256;\n\n  /**\n   * Events \n   */\n  event CreatedNewProject(string name, string symbol, uint8 decimals, uint256 supply, address[] pods, address token);\n  event CheckedPodsToken(address pod, uint256 supply);\n\n  /**\n   * Storage\n   */\n  string public name = \"RICO contract\";\n  string public version = \"0.9.3\";\n\n  address[] public tokens;\n\n  mapping(address => address[]) tokenToPods;\n  mapping(address => uint256) public maxSupplies;\n\n  /**\n   * constructor\n   */\n  function RICO() public { }\n\n  /**\n   * @dev newToken token meta Data implement for ERC-20 Token Standard Format.\n   * @param _name         Token name of RICO format.\n   * @param _symbol       Token symbol of RICO format.\n   * @param _decimals     Token decimals of RICO format.\n   * @param _pods         PoD contract addresses.\n   * @param _projectOwner Project's owner address (multisig wallet)\n   */\n  function newProject(\n    string _name, \n    string _symbol, \n    uint8 _decimals, \n    address[] _pods,\n    address _projectOwner\n  ) \n  public returns (address) \n  {\n    uint256 totalSupply = checkPoDs(_pods);\n\n    require(totalSupply > 0);\n    \n    //generate a ERC20 mintable token.\n    MintableToken token = new MintableToken();\n\n    token.init(_name, _symbol, _decimals, _projectOwner);\n\n    tokenToPods[token] = _pods;\n\n    maxSupplies[token] = totalSupply;\n\n    tokens.push(token);\n\n    CreatedNewProject(_name, _symbol, _decimals, totalSupply, _pods, token);\n\n    return address(token);\n  }\n\n  /**\n   * @dev To confirm pods and check the token maximum supplies.\n   * @param _pods         PoD contract addresses.\n   */\n  function checkPoDs(address[] _pods) internal returns (uint256) {\n    uint256 nowSupply = 0;\n    for (uint i = 0; i < _pods.length; i++) {\n      address podAddr = _pods[i];\n      AbsPoD pod = AbsPoD(podAddr);\n\n      if (!pod.isPoDStarted())\n        return 0;\n      \n      uint256 capOfToken = pod.getCapOfToken();\n      nowSupply = nowSupply.add(capOfToken);\n      CheckedPodsToken(address(pod), capOfToken);\n    }\n\n    return nowSupply;\n  }\n\n  /**\n   * @dev executes claim token when pod's status was ended.\n   * @param _tokenAddr         the project's token address.\n   * @param _index             pods num of registered array.\n   * @param _user              minter address.\n   */\n  function mintToken(address _tokenAddr, uint _index, address _user) public returns(bool) {\n\n    address user = msg.sender;\n \n    if (_user != 0x0) {\n      user = _user;\n    }\n\n    require(tokenToPods[_tokenAddr][_index] != 0x0);\n\n    AbsPoD pod = AbsPoD(tokenToPods[_tokenAddr][_index]);\n\n    require(pod.isPoDEnded());\n\n    uint256 tokenValue = pod.getBalanceOfToken(user);\n\n    require(tokenValue > 0);\n\n    MintableToken token = MintableToken(_tokenAddr);\n\n    require(token.mint(user, tokenValue));\n\n    require(pod.resetWeiBalance(user));\n\n    return true;\n  }\n\n  /**\n   * @dev Emergency call for token transfer miss.\n   */\n  function tokenTransfer(address _token) public onlyOwner() {\n    \n    MintableToken token = MintableToken(_token);\n\n    uint balance = token.balanceOf(this);\n    \n    token.transfer(owner, balance);\n  }\n\n  /**\n   * @dev To get pods addresses attached to token.\n   */\n  function getTokenPods(address _token) public constant returns (address[]) {\n    return tokenToPods[_token];\n  }\n}",
  "sourcePath": "/Users/lucaban/.ghq/github.com/DRI-network/RICO/contracts/RICO.sol",
  "ast": {
    "attributes": {
      "absolutePath": "/Users/lucaban/.ghq/github.com/DRI-network/RICO/contracts/RICO.sol",
      "exportedSymbols": {
        "RICO": [
          3660
        ]
      }
    },
    "children": [
      {
        "attributes": {
          "literals": [
            "solidity",
            "^",
            "0.4",
            ".18"
          ]
        },
        "id": 3338,
        "name": "PragmaDirective",
        "src": "0:24:15"
      },
      {
        "attributes": {
          "SourceUnit": 872,
          "absolutePath": "/Users/lucaban/.ghq/github.com/DRI-network/RICO/contracts/MintableToken.sol",
          "file": "./MintableToken.sol",
          "scope": 3661,
          "symbolAliases": [
            null
          ],
          "unitAlias": ""
        },
        "id": 3339,
        "name": "ImportDirective",
        "src": "25:29:15"
      },
      {
        "attributes": {
          "SourceUnit": 47,
          "absolutePath": "/Users/lucaban/.ghq/github.com/DRI-network/RICO/contracts/AbsPoD.sol",
          "file": "./AbsPoD.sol",
          "scope": 3661,
          "symbolAliases": [
            null
          ],
          "unitAlias": ""
        },
        "id": 3340,
        "name": "ImportDirective",
        "src": "55:22:15"
      },
      {
        "attributes": {
          "contractDependencies": [
            871,
            2117
          ],
          "contractKind": "contract",
          "documentation": "@title   RICO\n@dev     Handles the minting of the Tokens.\n         RICO.sol, Launcher.sol and ContractManager.sol, are the three contracts\n         that have to be deployed on the network on beforehand.\n         Please see the 2_deploy_contracts.js migration for the details.",
          "fullyImplemented": true,
          "linearizedBaseContracts": [
            3660,
            2117
          ],
          "name": "RICO",
          "scope": 3661
        },
        "children": [
          {
            "attributes": {
              "arguments": [
                null
              ]
            },
            "children": [
              {
                "attributes": {
                  "contractScope": null,
                  "name": "Ownable",
                  "referencedDeclaration": 2117,
                  "type": "contract Ownable"
                },
                "id": 3341,
                "name": "UserDefinedTypeName",
                "src": "567:7:15"
              }
            ],
            "id": 3342,
            "name": "InheritanceSpecifier",
            "src": "567:7:15"
          },
          {
            "children": [
              {
                "attributes": {
                  "contractScope": null,
                  "name": "SafeMath",
                  "referencedDeclaration": 3755,
                  "type": "library SafeMath"
                },
                "id": 3343,
                "name": "UserDefinedTypeName",
                "src": "606:8:15"
              },
              {
                "attributes": {
                  "name": "uint256",
                  "type": "uint256"
                },
                "id": 3344,
                "name": "ElementaryTypeName",
                "src": "619:7:15"
              }
            ],
            "id": 3345,
            "name": "UsingForDirective",
            "src": "600:27:15"
          },
          {
            "attributes": {
              "anonymous": false,
              "name": "CreatedNewProject"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "indexed": false,
                      "name": "name",
                      "scope": 3360,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "string memory",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "string",
                          "type": "string storage pointer"
                        },
                        "id": 3346,
                        "name": "ElementaryTypeName",
                        "src": "680:6:15"
                      }
                    ],
                    "id": 3347,
                    "name": "VariableDeclaration",
                    "src": "680:11:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "indexed": false,
                      "name": "symbol",
                      "scope": 3360,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "string memory",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "string",
                          "type": "string storage pointer"
                        },
                        "id": 3348,
                        "name": "ElementaryTypeName",
                        "src": "693:6:15"
                      }
                    ],
                    "id": 3349,
                    "name": "VariableDeclaration",
                    "src": "693:13:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "indexed": false,
                      "name": "decimals",
                      "scope": 3360,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint8",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint8",
                          "type": "uint8"
                        },
                        "id": 3350,
                        "name": "ElementaryTypeName",
                        "src": "708:5:15"
                      }
                    ],
                    "id": 3351,
                    "name": "VariableDeclaration",
                    "src": "708:14:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "indexed": false,
                      "name": "supply",
                      "scope": 3360,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint256",
                          "type": "uint256"
                        },
                        "id": 3352,
                        "name": "ElementaryTypeName",
                        "src": "724:7:15"
                      }
                    ],
                    "id": 3353,
                    "name": "VariableDeclaration",
                    "src": "724:14:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "indexed": false,
                      "name": "pods",
                      "scope": 3360,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address[] memory",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "length": null,
                          "type": "address[] storage pointer"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "address",
                              "type": "address"
                            },
                            "id": 3354,
                            "name": "ElementaryTypeName",
                            "src": "740:7:15"
                          }
                        ],
                        "id": 3355,
                        "name": "ArrayTypeName",
                        "src": "740:9:15"
                      }
                    ],
                    "id": 3356,
                    "name": "VariableDeclaration",
                    "src": "740:14:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "indexed": false,
                      "name": "token",
                      "scope": 3360,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3357,
                        "name": "ElementaryTypeName",
                        "src": "756:7:15"
                      }
                    ],
                    "id": 3358,
                    "name": "VariableDeclaration",
                    "src": "756:13:15"
                  }
                ],
                "id": 3359,
                "name": "ParameterList",
                "src": "679:91:15"
              }
            ],
            "id": 3360,
            "name": "EventDefinition",
            "src": "656:115:15"
          },
          {
            "attributes": {
              "anonymous": false,
              "name": "CheckedPodsToken"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "indexed": false,
                      "name": "pod",
                      "scope": 3366,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3361,
                        "name": "ElementaryTypeName",
                        "src": "797:7:15"
                      }
                    ],
                    "id": 3362,
                    "name": "VariableDeclaration",
                    "src": "797:11:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "indexed": false,
                      "name": "supply",
                      "scope": 3366,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint256",
                          "type": "uint256"
                        },
                        "id": 3363,
                        "name": "ElementaryTypeName",
                        "src": "810:7:15"
                      }
                    ],
                    "id": 3364,
                    "name": "VariableDeclaration",
                    "src": "810:14:15"
                  }
                ],
                "id": 3365,
                "name": "ParameterList",
                "src": "796:29:15"
              }
            ],
            "id": 3366,
            "name": "EventDefinition",
            "src": "774:52:15"
          },
          {
            "attributes": {
              "constant": false,
              "name": "name",
              "scope": 3660,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "string storage ref",
              "visibility": "public"
            },
            "children": [
              {
                "attributes": {
                  "name": "string",
                  "type": "string storage pointer"
                },
                "id": 3367,
                "name": "ElementaryTypeName",
                "src": "855:6:15"
              },
              {
                "attributes": {
                  "argumentTypes": null,
                  "hexvalue": "5249434f20636f6e7472616374",
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "lValueRequested": false,
                  "subdenomination": null,
                  "token": "string",
                  "type": "literal_string \"RICO contract\"",
                  "value": "RICO contract"
                },
                "id": 3368,
                "name": "Literal",
                "src": "876:15:15"
              }
            ],
            "id": 3369,
            "name": "VariableDeclaration",
            "src": "855:36:15"
          },
          {
            "attributes": {
              "constant": false,
              "name": "version",
              "scope": 3660,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "string storage ref",
              "visibility": "public"
            },
            "children": [
              {
                "attributes": {
                  "name": "string",
                  "type": "string storage pointer"
                },
                "id": 3370,
                "name": "ElementaryTypeName",
                "src": "895:6:15"
              },
              {
                "attributes": {
                  "argumentTypes": null,
                  "hexvalue": "302e392e33",
                  "isConstant": false,
                  "isLValue": false,
                  "isPure": true,
                  "lValueRequested": false,
                  "subdenomination": null,
                  "token": "string",
                  "type": "literal_string \"0.9.3\"",
                  "value": "0.9.3"
                },
                "id": 3371,
                "name": "Literal",
                "src": "919:7:15"
              }
            ],
            "id": 3372,
            "name": "VariableDeclaration",
            "src": "895:31:15"
          },
          {
            "attributes": {
              "constant": false,
              "name": "tokens",
              "scope": 3660,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "address[] storage ref",
              "value": null,
              "visibility": "public"
            },
            "children": [
              {
                "attributes": {
                  "length": null,
                  "type": "address[] storage pointer"
                },
                "children": [
                  {
                    "attributes": {
                      "name": "address",
                      "type": "address"
                    },
                    "id": 3373,
                    "name": "ElementaryTypeName",
                    "src": "931:7:15"
                  }
                ],
                "id": 3374,
                "name": "ArrayTypeName",
                "src": "931:9:15"
              }
            ],
            "id": 3375,
            "name": "VariableDeclaration",
            "src": "931:23:15"
          },
          {
            "attributes": {
              "constant": false,
              "name": "tokenToPods",
              "scope": 3660,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "mapping(address => address[] storage ref)",
              "value": null,
              "visibility": "internal"
            },
            "children": [
              {
                "attributes": {
                  "type": "mapping(address => address[] storage ref)"
                },
                "children": [
                  {
                    "attributes": {
                      "name": "address",
                      "type": "address"
                    },
                    "id": 3376,
                    "name": "ElementaryTypeName",
                    "src": "967:7:15"
                  },
                  {
                    "attributes": {
                      "length": null,
                      "type": "address[] storage pointer"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3377,
                        "name": "ElementaryTypeName",
                        "src": "978:7:15"
                      }
                    ],
                    "id": 3378,
                    "name": "ArrayTypeName",
                    "src": "978:9:15"
                  }
                ],
                "id": 3379,
                "name": "Mapping",
                "src": "959:29:15"
              }
            ],
            "id": 3380,
            "name": "VariableDeclaration",
            "src": "959:41:15"
          },
          {
            "attributes": {
              "constant": false,
              "name": "maxSupplies",
              "scope": 3660,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "mapping(address => uint256)",
              "value": null,
              "visibility": "public"
            },
            "children": [
              {
                "attributes": {
                  "type": "mapping(address => uint256)"
                },
                "children": [
                  {
                    "attributes": {
                      "name": "address",
                      "type": "address"
                    },
                    "id": 3381,
                    "name": "ElementaryTypeName",
                    "src": "1012:7:15"
                  },
                  {
                    "attributes": {
                      "name": "uint256",
                      "type": "uint256"
                    },
                    "id": 3382,
                    "name": "ElementaryTypeName",
                    "src": "1023:7:15"
                  }
                ],
                "id": 3383,
                "name": "Mapping",
                "src": "1004:27:15"
              }
            ],
            "id": 3384,
            "name": "VariableDeclaration",
            "src": "1004:46:15"
          },
          {
            "attributes": {
              "constant": false,
              "implemented": true,
              "isConstructor": true,
              "modifiers": [
                null
              ],
              "name": "RICO",
              "payable": false,
              "scope": 3660,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "attributes": {
                  "parameters": [
                    null
                  ]
                },
                "children": [],
                "id": 3385,
                "name": "ParameterList",
                "src": "1097:2:15"
              },
              {
                "attributes": {
                  "parameters": [
                    null
                  ]
                },
                "children": [],
                "id": 3386,
                "name": "ParameterList",
                "src": "1107:0:15"
              },
              {
                "attributes": {
                  "statements": [
                    null
                  ]
                },
                "children": [],
                "id": 3387,
                "name": "Block",
                "src": "1107:3:15"
              }
            ],
            "id": 3388,
            "name": "FunctionDefinition",
            "src": "1084:26:15"
          },
          {
            "attributes": {
              "constant": false,
              "implemented": true,
              "isConstructor": false,
              "modifiers": [
                null
              ],
              "name": "newProject",
              "payable": false,
              "scope": 3660,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_name",
                      "scope": 3463,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "string memory",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "string",
                          "type": "string storage pointer"
                        },
                        "id": 3389,
                        "name": "ElementaryTypeName",
                        "src": "1513:6:15"
                      }
                    ],
                    "id": 3390,
                    "name": "VariableDeclaration",
                    "src": "1513:12:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_symbol",
                      "scope": 3463,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "string memory",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "string",
                          "type": "string storage pointer"
                        },
                        "id": 3391,
                        "name": "ElementaryTypeName",
                        "src": "1532:6:15"
                      }
                    ],
                    "id": 3392,
                    "name": "VariableDeclaration",
                    "src": "1532:14:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_decimals",
                      "scope": 3463,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint8",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint8",
                          "type": "uint8"
                        },
                        "id": 3393,
                        "name": "ElementaryTypeName",
                        "src": "1553:5:15"
                      }
                    ],
                    "id": 3394,
                    "name": "VariableDeclaration",
                    "src": "1553:15:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_pods",
                      "scope": 3463,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address[] memory",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "length": null,
                          "type": "address[] storage pointer"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "address",
                              "type": "address"
                            },
                            "id": 3395,
                            "name": "ElementaryTypeName",
                            "src": "1575:7:15"
                          }
                        ],
                        "id": 3396,
                        "name": "ArrayTypeName",
                        "src": "1575:9:15"
                      }
                    ],
                    "id": 3397,
                    "name": "VariableDeclaration",
                    "src": "1575:15:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_projectOwner",
                      "scope": 3463,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3398,
                        "name": "ElementaryTypeName",
                        "src": "1596:7:15"
                      }
                    ],
                    "id": 3399,
                    "name": "VariableDeclaration",
                    "src": "1596:21:15"
                  }
                ],
                "id": 3400,
                "name": "ParameterList",
                "src": "1507:114:15"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3463,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3401,
                        "name": "ElementaryTypeName",
                        "src": "1641:7:15"
                      }
                    ],
                    "id": 3402,
                    "name": "VariableDeclaration",
                    "src": "1641:7:15"
                  }
                ],
                "id": 3403,
                "name": "ParameterList",
                "src": "1640:9:15"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "assignments": [
                        3405
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "totalSupply",
                          "scope": 3463,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "uint256",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "uint256",
                              "type": "uint256"
                            },
                            "id": 3404,
                            "name": "ElementaryTypeName",
                            "src": "1659:7:15"
                          }
                        ],
                        "id": 3405,
                        "name": "VariableDeclaration",
                        "src": "1659:19:15"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "uint256",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                  "typeString": "address[] memory"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3530,
                              "type": "function (address[] memory) returns (uint256)",
                              "value": "checkPoDs"
                            },
                            "id": 3406,
                            "name": "Identifier",
                            "src": "1681:9:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3397,
                              "type": "address[] memory",
                              "value": "_pods"
                            },
                            "id": 3407,
                            "name": "Identifier",
                            "src": "1691:5:15"
                          }
                        ],
                        "id": 3408,
                        "name": "FunctionCall",
                        "src": "1681:16:15"
                      }
                    ],
                    "id": 3409,
                    "name": "VariableDeclarationStatement",
                    "src": "1659:38:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "tuple()",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3770,
                              "type": "function (bool) pure",
                              "value": "require"
                            },
                            "id": 3410,
                            "name": "Identifier",
                            "src": "1704:7:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "operator": ">",
                              "type": "bool"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3405,
                                  "type": "uint256",
                                  "value": "totalSupply"
                                },
                                "id": 3411,
                                "name": "Identifier",
                                "src": "1712:11:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "hexvalue": "30",
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "subdenomination": null,
                                  "token": "number",
                                  "type": "int_const 0",
                                  "value": "0"
                                },
                                "id": 3412,
                                "name": "Literal",
                                "src": "1726:1:15"
                              }
                            ],
                            "id": 3413,
                            "name": "BinaryOperation",
                            "src": "1712:15:15"
                          }
                        ],
                        "id": 3414,
                        "name": "FunctionCall",
                        "src": "1704:24:15"
                      }
                    ],
                    "id": 3415,
                    "name": "ExpressionStatement",
                    "src": "1704:24:15"
                  },
                  {
                    "attributes": {
                      "assignments": [
                        3417
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "token",
                          "scope": 3463,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "contract MintableToken",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "contractScope": null,
                              "name": "MintableToken",
                              "referencedDeclaration": 871,
                              "type": "contract MintableToken"
                            },
                            "id": 3416,
                            "name": "UserDefinedTypeName",
                            "src": "1778:13:15"
                          }
                        ],
                        "id": 3417,
                        "name": "VariableDeclaration",
                        "src": "1778:19:15"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "arguments": [
                            null
                          ],
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "contract MintableToken",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                null
                              ],
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "type": "function () returns (contract MintableToken)"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "contractScope": null,
                                  "name": "MintableToken",
                                  "referencedDeclaration": 871,
                                  "type": "contract MintableToken"
                                },
                                "id": 3418,
                                "name": "UserDefinedTypeName",
                                "src": "1804:13:15"
                              }
                            ],
                            "id": 3419,
                            "name": "NewExpression",
                            "src": "1800:17:15"
                          }
                        ],
                        "id": 3420,
                        "name": "FunctionCall",
                        "src": "1800:19:15"
                      }
                    ],
                    "id": 3421,
                    "name": "VariableDeclarationStatement",
                    "src": "1778:41:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "bool",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                },
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "member_name": "init",
                              "referencedDeclaration": 764,
                              "type": "function (string memory,string memory,uint8,address) external returns (bool)"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3417,
                                  "type": "contract MintableToken",
                                  "value": "token"
                                },
                                "id": 3422,
                                "name": "Identifier",
                                "src": "1826:5:15"
                              }
                            ],
                            "id": 3424,
                            "name": "MemberAccess",
                            "src": "1826:10:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3390,
                              "type": "string memory",
                              "value": "_name"
                            },
                            "id": 3425,
                            "name": "Identifier",
                            "src": "1837:5:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3392,
                              "type": "string memory",
                              "value": "_symbol"
                            },
                            "id": 3426,
                            "name": "Identifier",
                            "src": "1844:7:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3394,
                              "type": "uint8",
                              "value": "_decimals"
                            },
                            "id": 3427,
                            "name": "Identifier",
                            "src": "1853:9:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3399,
                              "type": "address",
                              "value": "_projectOwner"
                            },
                            "id": 3428,
                            "name": "Identifier",
                            "src": "1864:13:15"
                          }
                        ],
                        "id": 3429,
                        "name": "FunctionCall",
                        "src": "1826:52:15"
                      }
                    ],
                    "id": 3430,
                    "name": "ExpressionStatement",
                    "src": "1826:52:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": "=",
                          "type": "address[] storage ref"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": true,
                              "type": "address[] storage ref"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3380,
                                  "type": "mapping(address => address[] storage ref)",
                                  "value": "tokenToPods"
                                },
                                "id": 3431,
                                "name": "Identifier",
                                "src": "1885:11:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3417,
                                  "type": "contract MintableToken",
                                  "value": "token"
                                },
                                "id": 3432,
                                "name": "Identifier",
                                "src": "1897:5:15"
                              }
                            ],
                            "id": 3433,
                            "name": "IndexAccess",
                            "src": "1885:18:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3397,
                              "type": "address[] memory",
                              "value": "_pods"
                            },
                            "id": 3434,
                            "name": "Identifier",
                            "src": "1906:5:15"
                          }
                        ],
                        "id": 3435,
                        "name": "Assignment",
                        "src": "1885:26:15"
                      }
                    ],
                    "id": 3436,
                    "name": "ExpressionStatement",
                    "src": "1885:26:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": "=",
                          "type": "uint256"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": true,
                              "type": "uint256"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3384,
                                  "type": "mapping(address => uint256)",
                                  "value": "maxSupplies"
                                },
                                "id": 3437,
                                "name": "Identifier",
                                "src": "1918:11:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3417,
                                  "type": "contract MintableToken",
                                  "value": "token"
                                },
                                "id": 3438,
                                "name": "Identifier",
                                "src": "1930:5:15"
                              }
                            ],
                            "id": 3439,
                            "name": "IndexAccess",
                            "src": "1918:18:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3405,
                              "type": "uint256",
                              "value": "totalSupply"
                            },
                            "id": 3440,
                            "name": "Identifier",
                            "src": "1939:11:15"
                          }
                        ],
                        "id": 3441,
                        "name": "Assignment",
                        "src": "1918:32:15"
                      }
                    ],
                    "id": 3442,
                    "name": "ExpressionStatement",
                    "src": "1918:32:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "uint256",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_contract$_MintableToken_$871",
                                  "typeString": "contract MintableToken"
                                }
                              ],
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "member_name": "push",
                              "referencedDeclaration": null,
                              "type": "function (address) returns (uint256)"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3375,
                                  "type": "address[] storage ref",
                                  "value": "tokens"
                                },
                                "id": 3443,
                                "name": "Identifier",
                                "src": "1957:6:15"
                              }
                            ],
                            "id": 3445,
                            "name": "MemberAccess",
                            "src": "1957:11:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3417,
                              "type": "contract MintableToken",
                              "value": "token"
                            },
                            "id": 3446,
                            "name": "Identifier",
                            "src": "1969:5:15"
                          }
                        ],
                        "id": 3447,
                        "name": "FunctionCall",
                        "src": "1957:18:15"
                      }
                    ],
                    "id": 3448,
                    "name": "ExpressionStatement",
                    "src": "1957:18:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "tuple()",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_string_memory_ptr",
                                  "typeString": "string memory"
                                },
                                {
                                  "typeIdentifier": "t_uint8",
                                  "typeString": "uint8"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                },
                                {
                                  "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                  "typeString": "address[] memory"
                                },
                                {
                                  "typeIdentifier": "t_contract$_MintableToken_$871",
                                  "typeString": "contract MintableToken"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3360,
                              "type": "function (string memory,string memory,uint8,uint256,address[] memory,address)",
                              "value": "CreatedNewProject"
                            },
                            "id": 3449,
                            "name": "Identifier",
                            "src": "1982:17:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3390,
                              "type": "string memory",
                              "value": "_name"
                            },
                            "id": 3450,
                            "name": "Identifier",
                            "src": "2000:5:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3392,
                              "type": "string memory",
                              "value": "_symbol"
                            },
                            "id": 3451,
                            "name": "Identifier",
                            "src": "2007:7:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3394,
                              "type": "uint8",
                              "value": "_decimals"
                            },
                            "id": 3452,
                            "name": "Identifier",
                            "src": "2016:9:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3405,
                              "type": "uint256",
                              "value": "totalSupply"
                            },
                            "id": 3453,
                            "name": "Identifier",
                            "src": "2027:11:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3397,
                              "type": "address[] memory",
                              "value": "_pods"
                            },
                            "id": 3454,
                            "name": "Identifier",
                            "src": "2040:5:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3417,
                              "type": "contract MintableToken",
                              "value": "token"
                            },
                            "id": 3455,
                            "name": "Identifier",
                            "src": "2047:5:15"
                          }
                        ],
                        "id": 3456,
                        "name": "FunctionCall",
                        "src": "1982:71:15"
                      }
                    ],
                    "id": 3457,
                    "name": "ExpressionStatement",
                    "src": "1982:71:15"
                  },
                  {
                    "attributes": {
                      "functionReturnParameters": 3403
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "address",
                          "type_conversion": true
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_contract$_MintableToken_$871",
                                  "typeString": "contract MintableToken"
                                }
                              ],
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "type": "type(address)",
                              "value": "address"
                            },
                            "id": 3458,
                            "name": "ElementaryTypeNameExpression",
                            "src": "2067:7:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3417,
                              "type": "contract MintableToken",
                              "value": "token"
                            },
                            "id": 3459,
                            "name": "Identifier",
                            "src": "2075:5:15"
                          }
                        ],
                        "id": 3460,
                        "name": "FunctionCall",
                        "src": "2067:14:15"
                      }
                    ],
                    "id": 3461,
                    "name": "Return",
                    "src": "2060:21:15"
                  }
                ],
                "id": 3462,
                "name": "Block",
                "src": "1653:433:15"
              }
            ],
            "id": 3463,
            "name": "FunctionDefinition",
            "src": "1488:598:15"
          },
          {
            "attributes": {
              "constant": false,
              "implemented": true,
              "isConstructor": false,
              "modifiers": [
                null
              ],
              "name": "checkPoDs",
              "payable": false,
              "scope": 3660,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "internal"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_pods",
                      "scope": 3530,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address[] memory",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "length": null,
                          "type": "address[] storage pointer"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "address",
                              "type": "address"
                            },
                            "id": 3464,
                            "name": "ElementaryTypeName",
                            "src": "2235:7:15"
                          }
                        ],
                        "id": 3465,
                        "name": "ArrayTypeName",
                        "src": "2235:9:15"
                      }
                    ],
                    "id": 3466,
                    "name": "VariableDeclaration",
                    "src": "2235:15:15"
                  }
                ],
                "id": 3467,
                "name": "ParameterList",
                "src": "2234:17:15"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3530,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint256",
                          "type": "uint256"
                        },
                        "id": 3468,
                        "name": "ElementaryTypeName",
                        "src": "2270:7:15"
                      }
                    ],
                    "id": 3469,
                    "name": "VariableDeclaration",
                    "src": "2270:7:15"
                  }
                ],
                "id": 3470,
                "name": "ParameterList",
                "src": "2269:9:15"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "assignments": [
                        3472
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "nowSupply",
                          "scope": 3530,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "uint256",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "uint256",
                              "type": "uint256"
                            },
                            "id": 3471,
                            "name": "ElementaryTypeName",
                            "src": "2285:7:15"
                          }
                        ],
                        "id": 3472,
                        "name": "VariableDeclaration",
                        "src": "2285:17:15"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "hexvalue": "30",
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "subdenomination": null,
                          "token": "number",
                          "type": "int_const 0",
                          "value": "0"
                        },
                        "id": 3473,
                        "name": "Literal",
                        "src": "2305:1:15"
                      }
                    ],
                    "id": 3474,
                    "name": "VariableDeclarationStatement",
                    "src": "2285:21:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "assignments": [
                            3476
                          ]
                        },
                        "children": [
                          {
                            "attributes": {
                              "constant": false,
                              "name": "i",
                              "scope": 3530,
                              "stateVariable": false,
                              "storageLocation": "default",
                              "type": "uint256",
                              "value": null,
                              "visibility": "internal"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "name": "uint",
                                  "type": "uint256"
                                },
                                "id": 3475,
                                "name": "ElementaryTypeName",
                                "src": "2317:4:15"
                              }
                            ],
                            "id": 3476,
                            "name": "VariableDeclaration",
                            "src": "2317:6:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "hexvalue": "30",
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "subdenomination": null,
                              "token": "number",
                              "type": "int_const 0",
                              "value": "0"
                            },
                            "id": 3477,
                            "name": "Literal",
                            "src": "2326:1:15"
                          }
                        ],
                        "id": 3478,
                        "name": "VariableDeclarationStatement",
                        "src": "2317:10:15"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": "<",
                          "type": "bool"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3476,
                              "type": "uint256",
                              "value": "i"
                            },
                            "id": 3479,
                            "name": "Identifier",
                            "src": "2329:1:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "member_name": "length",
                              "referencedDeclaration": null,
                              "type": "uint256"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3466,
                                  "type": "address[] memory",
                                  "value": "_pods"
                                },
                                "id": 3480,
                                "name": "Identifier",
                                "src": "2333:5:15"
                              }
                            ],
                            "id": 3481,
                            "name": "MemberAccess",
                            "src": "2333:12:15"
                          }
                        ],
                        "id": 3482,
                        "name": "BinaryOperation",
                        "src": "2329:16:15"
                      },
                      {
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "operator": "++",
                              "prefix": false,
                              "type": "uint256"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3476,
                                  "type": "uint256",
                                  "value": "i"
                                },
                                "id": 3483,
                                "name": "Identifier",
                                "src": "2347:1:15"
                              }
                            ],
                            "id": 3484,
                            "name": "UnaryOperation",
                            "src": "2347:3:15"
                          }
                        ],
                        "id": 3485,
                        "name": "ExpressionStatement",
                        "src": "2347:3:15"
                      },
                      {
                        "children": [
                          {
                            "attributes": {
                              "assignments": [
                                3487
                              ]
                            },
                            "children": [
                              {
                                "attributes": {
                                  "constant": false,
                                  "name": "podAddr",
                                  "scope": 3530,
                                  "stateVariable": false,
                                  "storageLocation": "default",
                                  "type": "address",
                                  "value": null,
                                  "visibility": "internal"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "name": "address",
                                      "type": "address"
                                    },
                                    "id": 3486,
                                    "name": "ElementaryTypeName",
                                    "src": "2360:7:15"
                                  }
                                ],
                                "id": 3487,
                                "name": "VariableDeclaration",
                                "src": "2360:15:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "type": "address"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3466,
                                      "type": "address[] memory",
                                      "value": "_pods"
                                    },
                                    "id": 3488,
                                    "name": "Identifier",
                                    "src": "2378:5:15"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3476,
                                      "type": "uint256",
                                      "value": "i"
                                    },
                                    "id": 3489,
                                    "name": "Identifier",
                                    "src": "2384:1:15"
                                  }
                                ],
                                "id": 3490,
                                "name": "IndexAccess",
                                "src": "2378:8:15"
                              }
                            ],
                            "id": 3491,
                            "name": "VariableDeclarationStatement",
                            "src": "2360:26:15"
                          },
                          {
                            "attributes": {
                              "assignments": [
                                3493
                              ]
                            },
                            "children": [
                              {
                                "attributes": {
                                  "constant": false,
                                  "name": "pod",
                                  "scope": 3530,
                                  "stateVariable": false,
                                  "storageLocation": "default",
                                  "type": "contract AbsPoD",
                                  "value": null,
                                  "visibility": "internal"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "contractScope": null,
                                      "name": "AbsPoD",
                                      "referencedDeclaration": 46,
                                      "type": "contract AbsPoD"
                                    },
                                    "id": 3492,
                                    "name": "UserDefinedTypeName",
                                    "src": "2394:6:15"
                                  }
                                ],
                                "id": 3493,
                                "name": "VariableDeclaration",
                                "src": "2394:10:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "isStructConstructorCall": false,
                                  "lValueRequested": false,
                                  "names": [
                                    null
                                  ],
                                  "type": "contract AbsPoD",
                                  "type_conversion": true
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        }
                                      ],
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 46,
                                      "type": "type(contract AbsPoD)",
                                      "value": "AbsPoD"
                                    },
                                    "id": 3494,
                                    "name": "Identifier",
                                    "src": "2407:6:15"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3487,
                                      "type": "address",
                                      "value": "podAddr"
                                    },
                                    "id": 3495,
                                    "name": "Identifier",
                                    "src": "2414:7:15"
                                  }
                                ],
                                "id": 3496,
                                "name": "FunctionCall",
                                "src": "2407:15:15"
                              }
                            ],
                            "id": 3497,
                            "name": "VariableDeclarationStatement",
                            "src": "2394:28:15"
                          },
                          {
                            "attributes": {
                              "falseBody": null
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "operator": "!",
                                  "prefix": true,
                                  "type": "bool"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "arguments": [
                                        null
                                      ],
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "isStructConstructorCall": false,
                                      "lValueRequested": false,
                                      "names": [
                                        null
                                      ],
                                      "type": "bool",
                                      "type_conversion": false
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": [
                                            null
                                          ],
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "member_name": "isPoDStarted",
                                          "referencedDeclaration": 25,
                                          "type": "function () view external returns (bool)"
                                        },
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "overloadedDeclarations": [
                                                null
                                              ],
                                              "referencedDeclaration": 3493,
                                              "type": "contract AbsPoD",
                                              "value": "pod"
                                            },
                                            "id": 3498,
                                            "name": "Identifier",
                                            "src": "2436:3:15"
                                          }
                                        ],
                                        "id": 3499,
                                        "name": "MemberAccess",
                                        "src": "2436:16:15"
                                      }
                                    ],
                                    "id": 3500,
                                    "name": "FunctionCall",
                                    "src": "2436:18:15"
                                  }
                                ],
                                "id": 3501,
                                "name": "UnaryOperation",
                                "src": "2435:19:15"
                              },
                              {
                                "attributes": {
                                  "functionReturnParameters": 3470
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "hexvalue": "30",
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "subdenomination": null,
                                      "token": "number",
                                      "type": "int_const 0",
                                      "value": "0"
                                    },
                                    "id": 3502,
                                    "name": "Literal",
                                    "src": "2471:1:15"
                                  }
                                ],
                                "id": 3503,
                                "name": "Return",
                                "src": "2464:8:15"
                              }
                            ],
                            "id": 3504,
                            "name": "IfStatement",
                            "src": "2431:41:15"
                          },
                          {
                            "attributes": {
                              "assignments": [
                                3506
                              ]
                            },
                            "children": [
                              {
                                "attributes": {
                                  "constant": false,
                                  "name": "capOfToken",
                                  "scope": 3530,
                                  "stateVariable": false,
                                  "storageLocation": "default",
                                  "type": "uint256",
                                  "value": null,
                                  "visibility": "internal"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "name": "uint256",
                                      "type": "uint256"
                                    },
                                    "id": 3505,
                                    "name": "ElementaryTypeName",
                                    "src": "2487:7:15"
                                  }
                                ],
                                "id": 3506,
                                "name": "VariableDeclaration",
                                "src": "2487:18:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "arguments": [
                                    null
                                  ],
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "isStructConstructorCall": false,
                                  "lValueRequested": false,
                                  "names": [
                                    null
                                  ],
                                  "type": "uint256",
                                  "type_conversion": false
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": [
                                        null
                                      ],
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "member_name": "getCapOfToken",
                                      "referencedDeclaration": 20,
                                      "type": "function () view external returns (uint256)"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 3493,
                                          "type": "contract AbsPoD",
                                          "value": "pod"
                                        },
                                        "id": 3507,
                                        "name": "Identifier",
                                        "src": "2508:3:15"
                                      }
                                    ],
                                    "id": 3508,
                                    "name": "MemberAccess",
                                    "src": "2508:17:15"
                                  }
                                ],
                                "id": 3509,
                                "name": "FunctionCall",
                                "src": "2508:19:15"
                              }
                            ],
                            "id": 3510,
                            "name": "VariableDeclarationStatement",
                            "src": "2487:40:15"
                          },
                          {
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "operator": "=",
                                  "type": "uint256"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3472,
                                      "type": "uint256",
                                      "value": "nowSupply"
                                    },
                                    "id": 3511,
                                    "name": "Identifier",
                                    "src": "2535:9:15"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "isStructConstructorCall": false,
                                      "lValueRequested": false,
                                      "names": [
                                        null
                                      ],
                                      "type": "uint256",
                                      "type_conversion": false
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          ],
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "member_name": "add",
                                          "referencedDeclaration": 3754,
                                          "type": "function (uint256,uint256) pure returns (uint256)"
                                        },
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "overloadedDeclarations": [
                                                null
                                              ],
                                              "referencedDeclaration": 3472,
                                              "type": "uint256",
                                              "value": "nowSupply"
                                            },
                                            "id": 3512,
                                            "name": "Identifier",
                                            "src": "2547:9:15"
                                          }
                                        ],
                                        "id": 3513,
                                        "name": "MemberAccess",
                                        "src": "2547:13:15"
                                      },
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 3506,
                                          "type": "uint256",
                                          "value": "capOfToken"
                                        },
                                        "id": 3514,
                                        "name": "Identifier",
                                        "src": "2561:10:15"
                                      }
                                    ],
                                    "id": 3515,
                                    "name": "FunctionCall",
                                    "src": "2547:25:15"
                                  }
                                ],
                                "id": 3516,
                                "name": "Assignment",
                                "src": "2535:37:15"
                              }
                            ],
                            "id": 3517,
                            "name": "ExpressionStatement",
                            "src": "2535:37:15"
                          },
                          {
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "isStructConstructorCall": false,
                                  "lValueRequested": false,
                                  "names": [
                                    null
                                  ],
                                  "type": "tuple()",
                                  "type_conversion": false
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        },
                                        {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      ],
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3366,
                                      "type": "function (address,uint256)",
                                      "value": "CheckedPodsToken"
                                    },
                                    "id": 3518,
                                    "name": "Identifier",
                                    "src": "2580:16:15"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "isStructConstructorCall": false,
                                      "lValueRequested": false,
                                      "names": [
                                        null
                                      ],
                                      "type": "address",
                                      "type_conversion": true
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_contract$_AbsPoD_$46",
                                              "typeString": "contract AbsPoD"
                                            }
                                          ],
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "type": "type(address)",
                                          "value": "address"
                                        },
                                        "id": 3519,
                                        "name": "ElementaryTypeNameExpression",
                                        "src": "2597:7:15"
                                      },
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 3493,
                                          "type": "contract AbsPoD",
                                          "value": "pod"
                                        },
                                        "id": 3520,
                                        "name": "Identifier",
                                        "src": "2605:3:15"
                                      }
                                    ],
                                    "id": 3521,
                                    "name": "FunctionCall",
                                    "src": "2597:12:15"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3506,
                                      "type": "uint256",
                                      "value": "capOfToken"
                                    },
                                    "id": 3522,
                                    "name": "Identifier",
                                    "src": "2611:10:15"
                                  }
                                ],
                                "id": 3523,
                                "name": "FunctionCall",
                                "src": "2580:42:15"
                              }
                            ],
                            "id": 3524,
                            "name": "ExpressionStatement",
                            "src": "2580:42:15"
                          }
                        ],
                        "id": 3525,
                        "name": "Block",
                        "src": "2352:277:15"
                      }
                    ],
                    "id": 3526,
                    "name": "ForStatement",
                    "src": "2312:317:15"
                  },
                  {
                    "attributes": {
                      "functionReturnParameters": 3470
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "overloadedDeclarations": [
                            null
                          ],
                          "referencedDeclaration": 3472,
                          "type": "uint256",
                          "value": "nowSupply"
                        },
                        "id": 3527,
                        "name": "Identifier",
                        "src": "2642:9:15"
                      }
                    ],
                    "id": 3528,
                    "name": "Return",
                    "src": "2635:16:15"
                  }
                ],
                "id": 3529,
                "name": "Block",
                "src": "2279:377:15"
              }
            ],
            "id": 3530,
            "name": "FunctionDefinition",
            "src": "2216:440:15"
          },
          {
            "attributes": {
              "constant": false,
              "implemented": true,
              "isConstructor": false,
              "modifiers": [
                null
              ],
              "name": "mintToken",
              "payable": false,
              "scope": 3660,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_tokenAddr",
                      "scope": 3618,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3531,
                        "name": "ElementaryTypeName",
                        "src": "2919:7:15"
                      }
                    ],
                    "id": 3532,
                    "name": "VariableDeclaration",
                    "src": "2919:18:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_index",
                      "scope": 3618,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 3533,
                        "name": "ElementaryTypeName",
                        "src": "2939:4:15"
                      }
                    ],
                    "id": 3534,
                    "name": "VariableDeclaration",
                    "src": "2939:11:15"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_user",
                      "scope": 3618,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3535,
                        "name": "ElementaryTypeName",
                        "src": "2952:7:15"
                      }
                    ],
                    "id": 3536,
                    "name": "VariableDeclaration",
                    "src": "2952:13:15"
                  }
                ],
                "id": 3537,
                "name": "ParameterList",
                "src": "2918:48:15"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3618,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bool",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bool",
                          "type": "bool"
                        },
                        "id": 3538,
                        "name": "ElementaryTypeName",
                        "src": "2982:4:15"
                      }
                    ],
                    "id": 3539,
                    "name": "VariableDeclaration",
                    "src": "2982:4:15"
                  }
                ],
                "id": 3540,
                "name": "ParameterList",
                "src": "2981:6:15"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "assignments": [
                        3542
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "user",
                          "scope": 3618,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "address",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "address",
                              "type": "address"
                            },
                            "id": 3541,
                            "name": "ElementaryTypeName",
                            "src": "2995:7:15"
                          }
                        ],
                        "id": 3542,
                        "name": "VariableDeclaration",
                        "src": "2995:12:15"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "member_name": "sender",
                          "referencedDeclaration": null,
                          "type": "address"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3767,
                              "type": "msg",
                              "value": "msg"
                            },
                            "id": 3543,
                            "name": "Identifier",
                            "src": "3010:3:15"
                          }
                        ],
                        "id": 3544,
                        "name": "MemberAccess",
                        "src": "3010:10:15"
                      }
                    ],
                    "id": 3545,
                    "name": "VariableDeclarationStatement",
                    "src": "2995:25:15"
                  },
                  {
                    "attributes": {
                      "falseBody": null
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_address",
                            "typeString": "address"
                          },
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": "!=",
                          "type": "bool"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3536,
                              "type": "address",
                              "value": "_user"
                            },
                            "id": 3546,
                            "name": "Identifier",
                            "src": "3032:5:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "hexvalue": "307830",
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "subdenomination": null,
                              "token": "number",
                              "type": "int_const 0",
                              "value": "0x0"
                            },
                            "id": 3547,
                            "name": "Literal",
                            "src": "3041:3:15"
                          }
                        ],
                        "id": 3548,
                        "name": "BinaryOperation",
                        "src": "3032:12:15"
                      },
                      {
                        "children": [
                          {
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "operator": "=",
                                  "type": "address"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3542,
                                      "type": "address",
                                      "value": "user"
                                    },
                                    "id": 3549,
                                    "name": "Identifier",
                                    "src": "3054:4:15"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3536,
                                      "type": "address",
                                      "value": "_user"
                                    },
                                    "id": 3550,
                                    "name": "Identifier",
                                    "src": "3061:5:15"
                                  }
                                ],
                                "id": 3551,
                                "name": "Assignment",
                                "src": "3054:12:15"
                              }
                            ],
                            "id": 3552,
                            "name": "ExpressionStatement",
                            "src": "3054:12:15"
                          }
                        ],
                        "id": 3553,
                        "name": "Block",
                        "src": "3046:27:15"
                      }
                    ],
                    "id": 3554,
                    "name": "IfStatement",
                    "src": "3028:45:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "tuple()",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3770,
                              "type": "function (bool) pure",
                              "value": "require"
                            },
                            "id": 3555,
                            "name": "Identifier",
                            "src": "3079:7:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_address",
                                "typeString": "address"
                              },
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "operator": "!=",
                              "type": "bool"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "type": "address"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "type": "address[] storage ref"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 3380,
                                          "type": "mapping(address => address[] storage ref)",
                                          "value": "tokenToPods"
                                        },
                                        "id": 3556,
                                        "name": "Identifier",
                                        "src": "3087:11:15"
                                      },
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 3532,
                                          "type": "address",
                                          "value": "_tokenAddr"
                                        },
                                        "id": 3557,
                                        "name": "Identifier",
                                        "src": "3099:10:15"
                                      }
                                    ],
                                    "id": 3558,
                                    "name": "IndexAccess",
                                    "src": "3087:23:15"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3534,
                                      "type": "uint256",
                                      "value": "_index"
                                    },
                                    "id": 3559,
                                    "name": "Identifier",
                                    "src": "3111:6:15"
                                  }
                                ],
                                "id": 3560,
                                "name": "IndexAccess",
                                "src": "3087:31:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "hexvalue": "307830",
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "subdenomination": null,
                                  "token": "number",
                                  "type": "int_const 0",
                                  "value": "0x0"
                                },
                                "id": 3561,
                                "name": "Literal",
                                "src": "3122:3:15"
                              }
                            ],
                            "id": 3562,
                            "name": "BinaryOperation",
                            "src": "3087:38:15"
                          }
                        ],
                        "id": 3563,
                        "name": "FunctionCall",
                        "src": "3079:47:15"
                      }
                    ],
                    "id": 3564,
                    "name": "ExpressionStatement",
                    "src": "3079:47:15"
                  },
                  {
                    "attributes": {
                      "assignments": [
                        3566
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "pod",
                          "scope": 3618,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "contract AbsPoD",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "contractScope": null,
                              "name": "AbsPoD",
                              "referencedDeclaration": 46,
                              "type": "contract AbsPoD"
                            },
                            "id": 3565,
                            "name": "UserDefinedTypeName",
                            "src": "3133:6:15"
                          }
                        ],
                        "id": 3566,
                        "name": "VariableDeclaration",
                        "src": "3133:10:15"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "contract AbsPoD",
                          "type_conversion": true
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 46,
                              "type": "type(contract AbsPoD)",
                              "value": "AbsPoD"
                            },
                            "id": 3567,
                            "name": "Identifier",
                            "src": "3146:6:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "type": "address"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "type": "address[] storage ref"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3380,
                                      "type": "mapping(address => address[] storage ref)",
                                      "value": "tokenToPods"
                                    },
                                    "id": 3568,
                                    "name": "Identifier",
                                    "src": "3153:11:15"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3532,
                                      "type": "address",
                                      "value": "_tokenAddr"
                                    },
                                    "id": 3569,
                                    "name": "Identifier",
                                    "src": "3165:10:15"
                                  }
                                ],
                                "id": 3570,
                                "name": "IndexAccess",
                                "src": "3153:23:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3534,
                                  "type": "uint256",
                                  "value": "_index"
                                },
                                "id": 3571,
                                "name": "Identifier",
                                "src": "3177:6:15"
                              }
                            ],
                            "id": 3572,
                            "name": "IndexAccess",
                            "src": "3153:31:15"
                          }
                        ],
                        "id": 3573,
                        "name": "FunctionCall",
                        "src": "3146:39:15"
                      }
                    ],
                    "id": 3574,
                    "name": "VariableDeclarationStatement",
                    "src": "3133:52:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "tuple()",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3770,
                              "type": "function (bool) pure",
                              "value": "require"
                            },
                            "id": 3575,
                            "name": "Identifier",
                            "src": "3192:7:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "arguments": [
                                null
                              ],
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "isStructConstructorCall": false,
                              "lValueRequested": false,
                              "names": [
                                null
                              ],
                              "type": "bool",
                              "type_conversion": false
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": [
                                    null
                                  ],
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "member_name": "isPoDEnded",
                                  "referencedDeclaration": 30,
                                  "type": "function () view external returns (bool)"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3566,
                                      "type": "contract AbsPoD",
                                      "value": "pod"
                                    },
                                    "id": 3576,
                                    "name": "Identifier",
                                    "src": "3200:3:15"
                                  }
                                ],
                                "id": 3577,
                                "name": "MemberAccess",
                                "src": "3200:14:15"
                              }
                            ],
                            "id": 3578,
                            "name": "FunctionCall",
                            "src": "3200:16:15"
                          }
                        ],
                        "id": 3579,
                        "name": "FunctionCall",
                        "src": "3192:25:15"
                      }
                    ],
                    "id": 3580,
                    "name": "ExpressionStatement",
                    "src": "3192:25:15"
                  },
                  {
                    "attributes": {
                      "assignments": [
                        3582
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "tokenValue",
                          "scope": 3618,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "uint256",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "uint256",
                              "type": "uint256"
                            },
                            "id": 3581,
                            "name": "ElementaryTypeName",
                            "src": "3224:7:15"
                          }
                        ],
                        "id": 3582,
                        "name": "VariableDeclaration",
                        "src": "3224:18:15"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "uint256",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "member_name": "getBalanceOfToken",
                              "referencedDeclaration": 15,
                              "type": "function (address) view external returns (uint256)"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3566,
                                  "type": "contract AbsPoD",
                                  "value": "pod"
                                },
                                "id": 3583,
                                "name": "Identifier",
                                "src": "3245:3:15"
                              }
                            ],
                            "id": 3584,
                            "name": "MemberAccess",
                            "src": "3245:21:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3542,
                              "type": "address",
                              "value": "user"
                            },
                            "id": 3585,
                            "name": "Identifier",
                            "src": "3267:4:15"
                          }
                        ],
                        "id": 3586,
                        "name": "FunctionCall",
                        "src": "3245:27:15"
                      }
                    ],
                    "id": 3587,
                    "name": "VariableDeclarationStatement",
                    "src": "3224:48:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "tuple()",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3770,
                              "type": "function (bool) pure",
                              "value": "require"
                            },
                            "id": 3588,
                            "name": "Identifier",
                            "src": "3279:7:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "operator": ">",
                              "type": "bool"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3582,
                                  "type": "uint256",
                                  "value": "tokenValue"
                                },
                                "id": 3589,
                                "name": "Identifier",
                                "src": "3287:10:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "hexvalue": "30",
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "subdenomination": null,
                                  "token": "number",
                                  "type": "int_const 0",
                                  "value": "0"
                                },
                                "id": 3590,
                                "name": "Literal",
                                "src": "3300:1:15"
                              }
                            ],
                            "id": 3591,
                            "name": "BinaryOperation",
                            "src": "3287:14:15"
                          }
                        ],
                        "id": 3592,
                        "name": "FunctionCall",
                        "src": "3279:23:15"
                      }
                    ],
                    "id": 3593,
                    "name": "ExpressionStatement",
                    "src": "3279:23:15"
                  },
                  {
                    "attributes": {
                      "assignments": [
                        3595
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "token",
                          "scope": 3618,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "contract MintableToken",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "contractScope": null,
                              "name": "MintableToken",
                              "referencedDeclaration": 871,
                              "type": "contract MintableToken"
                            },
                            "id": 3594,
                            "name": "UserDefinedTypeName",
                            "src": "3309:13:15"
                          }
                        ],
                        "id": 3595,
                        "name": "VariableDeclaration",
                        "src": "3309:19:15"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "contract MintableToken",
                          "type_conversion": true
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 871,
                              "type": "type(contract MintableToken)",
                              "value": "MintableToken"
                            },
                            "id": 3596,
                            "name": "Identifier",
                            "src": "3331:13:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3532,
                              "type": "address",
                              "value": "_tokenAddr"
                            },
                            "id": 3597,
                            "name": "Identifier",
                            "src": "3345:10:15"
                          }
                        ],
                        "id": 3598,
                        "name": "FunctionCall",
                        "src": "3331:25:15"
                      }
                    ],
                    "id": 3599,
                    "name": "VariableDeclarationStatement",
                    "src": "3309:47:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "tuple()",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3770,
                              "type": "function (bool) pure",
                              "value": "require"
                            },
                            "id": 3600,
                            "name": "Identifier",
                            "src": "3363:7:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "isStructConstructorCall": false,
                              "lValueRequested": false,
                              "names": [
                                null
                              ],
                              "type": "bool",
                              "type_conversion": false
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_address",
                                      "typeString": "address"
                                    },
                                    {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  ],
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "member_name": "mint",
                                  "referencedDeclaration": 811,
                                  "type": "function (address,uint256) external returns (bool)"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3595,
                                      "type": "contract MintableToken",
                                      "value": "token"
                                    },
                                    "id": 3601,
                                    "name": "Identifier",
                                    "src": "3371:5:15"
                                  }
                                ],
                                "id": 3602,
                                "name": "MemberAccess",
                                "src": "3371:10:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3542,
                                  "type": "address",
                                  "value": "user"
                                },
                                "id": 3603,
                                "name": "Identifier",
                                "src": "3382:4:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3582,
                                  "type": "uint256",
                                  "value": "tokenValue"
                                },
                                "id": 3604,
                                "name": "Identifier",
                                "src": "3388:10:15"
                              }
                            ],
                            "id": 3605,
                            "name": "FunctionCall",
                            "src": "3371:28:15"
                          }
                        ],
                        "id": 3606,
                        "name": "FunctionCall",
                        "src": "3363:37:15"
                      }
                    ],
                    "id": 3607,
                    "name": "ExpressionStatement",
                    "src": "3363:37:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "tuple()",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3770,
                              "type": "function (bool) pure",
                              "value": "require"
                            },
                            "id": 3608,
                            "name": "Identifier",
                            "src": "3407:7:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "isStructConstructorCall": false,
                              "lValueRequested": false,
                              "names": [
                                null
                              ],
                              "type": "bool",
                              "type_conversion": false
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_address",
                                      "typeString": "address"
                                    }
                                  ],
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "member_name": "resetWeiBalance",
                                  "referencedDeclaration": 8,
                                  "type": "function (address) external returns (bool)"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3566,
                                      "type": "contract AbsPoD",
                                      "value": "pod"
                                    },
                                    "id": 3609,
                                    "name": "Identifier",
                                    "src": "3415:3:15"
                                  }
                                ],
                                "id": 3610,
                                "name": "MemberAccess",
                                "src": "3415:19:15"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3542,
                                  "type": "address",
                                  "value": "user"
                                },
                                "id": 3611,
                                "name": "Identifier",
                                "src": "3435:4:15"
                              }
                            ],
                            "id": 3612,
                            "name": "FunctionCall",
                            "src": "3415:25:15"
                          }
                        ],
                        "id": 3613,
                        "name": "FunctionCall",
                        "src": "3407:34:15"
                      }
                    ],
                    "id": 3614,
                    "name": "ExpressionStatement",
                    "src": "3407:34:15"
                  },
                  {
                    "attributes": {
                      "functionReturnParameters": 3540
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "hexvalue": "74727565",
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "subdenomination": null,
                          "token": "bool",
                          "type": "bool",
                          "value": "true"
                        },
                        "id": 3615,
                        "name": "Literal",
                        "src": "3455:4:15"
                      }
                    ],
                    "id": 3616,
                    "name": "Return",
                    "src": "3448:11:15"
                  }
                ],
                "id": 3617,
                "name": "Block",
                "src": "2988:476:15"
              }
            ],
            "id": 3618,
            "name": "FunctionDefinition",
            "src": "2900:564:15"
          },
          {
            "attributes": {
              "constant": false,
              "implemented": true,
              "isConstructor": false,
              "name": "tokenTransfer",
              "payable": false,
              "scope": 3660,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_token",
                      "scope": 3646,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3619,
                        "name": "ElementaryTypeName",
                        "src": "3553:7:15"
                      }
                    ],
                    "id": 3620,
                    "name": "VariableDeclaration",
                    "src": "3553:14:15"
                  }
                ],
                "id": 3621,
                "name": "ParameterList",
                "src": "3552:16:15"
              },
              {
                "attributes": {
                  "parameters": [
                    null
                  ]
                },
                "children": [],
                "id": 3624,
                "name": "ParameterList",
                "src": "3588:0:15"
              },
              {
                "attributes": {
                  "arguments": [
                    null
                  ]
                },
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 2091,
                      "type": "modifier ()",
                      "value": "onlyOwner"
                    },
                    "id": 3622,
                    "name": "Identifier",
                    "src": "3576:9:15"
                  }
                ],
                "id": 3623,
                "name": "ModifierInvocation",
                "src": "3576:11:15"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "assignments": [
                        3626
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "token",
                          "scope": 3646,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "contract MintableToken",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "contractScope": null,
                              "name": "MintableToken",
                              "referencedDeclaration": 871,
                              "type": "contract MintableToken"
                            },
                            "id": 3625,
                            "name": "UserDefinedTypeName",
                            "src": "3599:13:15"
                          }
                        ],
                        "id": 3626,
                        "name": "VariableDeclaration",
                        "src": "3599:19:15"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "contract MintableToken",
                          "type_conversion": true
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 871,
                              "type": "type(contract MintableToken)",
                              "value": "MintableToken"
                            },
                            "id": 3627,
                            "name": "Identifier",
                            "src": "3621:13:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3620,
                              "type": "address",
                              "value": "_token"
                            },
                            "id": 3628,
                            "name": "Identifier",
                            "src": "3635:6:15"
                          }
                        ],
                        "id": 3629,
                        "name": "FunctionCall",
                        "src": "3621:21:15"
                      }
                    ],
                    "id": 3630,
                    "name": "VariableDeclarationStatement",
                    "src": "3599:43:15"
                  },
                  {
                    "attributes": {
                      "assignments": [
                        3632
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "balance",
                          "scope": 3646,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "uint256",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "uint",
                              "type": "uint256"
                            },
                            "id": 3631,
                            "name": "ElementaryTypeName",
                            "src": "3649:4:15"
                          }
                        ],
                        "id": 3632,
                        "name": "VariableDeclaration",
                        "src": "3649:12:15"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "uint256",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_contract$_RICO_$3660",
                                  "typeString": "contract RICO"
                                }
                              ],
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "member_name": "balanceOf",
                              "referencedDeclaration": 280,
                              "type": "function (address) view external returns (uint256)"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3626,
                                  "type": "contract MintableToken",
                                  "value": "token"
                                },
                                "id": 3633,
                                "name": "Identifier",
                                "src": "3664:5:15"
                              }
                            ],
                            "id": 3634,
                            "name": "MemberAccess",
                            "src": "3664:15:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3800,
                              "type": "contract RICO",
                              "value": "this"
                            },
                            "id": 3635,
                            "name": "Identifier",
                            "src": "3680:4:15"
                          }
                        ],
                        "id": 3636,
                        "name": "FunctionCall",
                        "src": "3664:21:15"
                      }
                    ],
                    "id": 3637,
                    "name": "VariableDeclarationStatement",
                    "src": "3649:36:15"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "bool",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_address",
                                  "typeString": "address"
                                },
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "member_name": "transfer",
                              "referencedDeclaration": 201,
                              "type": "function (address,uint256) external returns (bool)"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 3626,
                                  "type": "contract MintableToken",
                                  "value": "token"
                                },
                                "id": 3638,
                                "name": "Identifier",
                                "src": "3696:5:15"
                              }
                            ],
                            "id": 3640,
                            "name": "MemberAccess",
                            "src": "3696:14:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 2065,
                              "type": "address",
                              "value": "owner"
                            },
                            "id": 3641,
                            "name": "Identifier",
                            "src": "3711:5:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3632,
                              "type": "uint256",
                              "value": "balance"
                            },
                            "id": 3642,
                            "name": "Identifier",
                            "src": "3718:7:15"
                          }
                        ],
                        "id": 3643,
                        "name": "FunctionCall",
                        "src": "3696:30:15"
                      }
                    ],
                    "id": 3644,
                    "name": "ExpressionStatement",
                    "src": "3696:30:15"
                  }
                ],
                "id": 3645,
                "name": "Block",
                "src": "3588:143:15"
              }
            ],
            "id": 3646,
            "name": "FunctionDefinition",
            "src": "3530:201:15"
          },
          {
            "attributes": {
              "constant": true,
              "implemented": true,
              "isConstructor": false,
              "modifiers": [
                null
              ],
              "name": "getTokenPods",
              "payable": false,
              "scope": 3660,
              "stateMutability": "view",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_token",
                      "scope": 3659,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3647,
                        "name": "ElementaryTypeName",
                        "src": "3820:7:15"
                      }
                    ],
                    "id": 3648,
                    "name": "VariableDeclaration",
                    "src": "3820:14:15"
                  }
                ],
                "id": 3649,
                "name": "ParameterList",
                "src": "3819:16:15"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3659,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address[] memory",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "length": null,
                          "type": "address[] storage pointer"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "address",
                              "type": "address"
                            },
                            "id": 3650,
                            "name": "ElementaryTypeName",
                            "src": "3861:7:15"
                          }
                        ],
                        "id": 3651,
                        "name": "ArrayTypeName",
                        "src": "3861:9:15"
                      }
                    ],
                    "id": 3652,
                    "name": "VariableDeclaration",
                    "src": "3861:9:15"
                  }
                ],
                "id": 3653,
                "name": "ParameterList",
                "src": "3860:11:15"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "functionReturnParameters": 3653
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "type": "address[] storage ref"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3380,
                              "type": "mapping(address => address[] storage ref)",
                              "value": "tokenToPods"
                            },
                            "id": 3654,
                            "name": "Identifier",
                            "src": "3885:11:15"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3648,
                              "type": "address",
                              "value": "_token"
                            },
                            "id": 3655,
                            "name": "Identifier",
                            "src": "3897:6:15"
                          }
                        ],
                        "id": 3656,
                        "name": "IndexAccess",
                        "src": "3885:19:15"
                      }
                    ],
                    "id": 3657,
                    "name": "Return",
                    "src": "3878:26:15"
                  }
                ],
                "id": 3658,
                "name": "Block",
                "src": "3872:37:15"
              }
            ],
            "id": 3659,
            "name": "FunctionDefinition",
            "src": "3798:111:15"
          }
        ],
        "id": 3660,
        "name": "ContractDefinition",
        "src": "550:3361:15"
      }
    ],
    "id": 3661,
    "name": "SourceUnit",
    "src": "0:3911:15"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.18+commit.9cf6e910.Emscripten.clang"
  },
  "networks": {
    "1520399383573": {
      "events": {},
      "links": {},
      "address": "0x0c20340c592d85ffe45413c69c9ec81ac1b42c0f"
    }
  },
  "schemaVersion": "1.0.1",
  "updatedAt": "2018-03-07T05:10:53.125Z"
}