tokenboost-solidity-erc20sale
Version:
Solidity contracts for TokenBoost (ERC20Sale)
665 lines (664 loc) • 284 kB
JSON
{
"contractName": "Registry",
"abi": [
{
"constant": false,
"inputs": [],
"name": "renounceOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "owner",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_newOwner",
"type": "address"
}
],
"name": "transferOwnership",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"name": "_opened",
"type": "bool"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "previousOwner",
"type": "address"
}
],
"name": "OwnershipRenounced",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"constant": false,
"inputs": [],
"name": "open",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_identifier",
"type": "string"
},
{
"name": "_version",
"type": "uint256"
},
{
"name": "_template",
"type": "address"
}
],
"name": "register",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "numberOfIdentifiers",
"outputs": [
{
"name": "size",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_index",
"type": "uint256"
}
],
"name": "identifierAt",
"outputs": [
{
"name": "identifier",
"type": "string"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_identifier",
"type": "string"
}
],
"name": "versionsOf",
"outputs": [
{
"name": "version",
"type": "uint256[]"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_identifier",
"type": "string"
},
{
"name": "_version",
"type": "uint256"
}
],
"name": "templateOf",
"outputs": [
{
"name": "template",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_identifier",
"type": "string"
}
],
"name": "latestTemplateOf",
"outputs": [
{
"name": "template",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x608060405234801561001057600080fd5b506040516020806113f383398101806040528101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600060146101000a81548160ff021916908315150217905550506113568061009d6000396000f3006080604052600436106100a4576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063121a42c0146100a957806324d48c0d1461014f5780632a4798da1461017a5780632cf5cf8b146102235780635147fba1146102e15780635dc1aad314610394578063715018a6146104275780638da5cb5b1461043e578063f2fde38b14610495578063fcfff16f146104d8575b600080fd5b3480156100b557600080fd5b506100d4600480360381019080803590602001909291905050506104ef565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101145780820151818401526020810190506100f9565b50505050905090810190601f1680156101415780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015b57600080fd5b506101646105aa565b6040518082815260200191505060405180910390f35b34801561018657600080fd5b506101e1600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506105b7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561022f57600080fd5b5061028a600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106eb565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156102cd5780820151818401526020810190506102b2565b505050509050019250505060405180910390f35b3480156102ed57600080fd5b50610352600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001909291905050506107ae565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103a057600080fd5b50610425600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610855565b005b34801561043357600080fd5b5061043c610f85565b005b34801561044a57600080fd5b50610453611087565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104a157600080fd5b506104d6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ac565b005b3480156104e457600080fd5b506104ed611113565b005b606060018281548110151561050057fe5b906000526020600020018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561059e5780601f106105735761010080835404028352916020019161059e565b820191906000526020600020905b81548152906001019060200180831161058157829003601f168201915b50505050509050919050565b6000600180549050905090565b6000806003836040518082805190602001908083835b6020831015156105f257805182526020820191506020810190506020830392506105cd565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902090506004836040518082805190602001908083835b60208310151561065f578051825260208201915060208101905060208303925061063a565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060008260018480549050038154811015156106a957fe5b9060005260206000200154815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915050919050565b60606003826040518082805190602001908083835b6020831015156107255780518252602082019150602081019050602083039250610700565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390208054806020026020016040519081016040528092919081815260200182805480156107a257602002820191906000526020600020905b81548152602001906001019080831161078e575b50505050509050919050565b60006004836040518082805190602001908083835b6020831015156107e857805182526020820191506020810190506020830392506107c3565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b600080600060149054906101000a900460ff16806108bf57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156108ca57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166301ffc9a7806040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180827c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001915050602060405180830381600087803b15801561097757600080fd5b505af115801561098b573d6000803e3d6000fd5b505050506040513d60208110156109a157600080fd5b810190808051906020019092919050505015156109bd57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166301ffc9a763d48445ff6040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180827c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001915050602060405180830381600087803b158015610a6e57600080fd5b505af1158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b81019080805190602001909291905050501515610ab457600080fd5b6002856040518082805190602001908083835b602083101515610aec5780518252602082019150602081019050602083039250610ac7565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480610ba857503373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b1515610c42576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260338152602001807f6964656e74696669657220616c7265616479207265676973746572656420627981526020017f20616e6f746865722072656769737472616e740000000000000000000000000081525060400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610d61576001859080600181540180825580915050906001820390600052602060002001600090919290919091509080519060200190610cb4929190611285565b5050336002866040518082805190602001908083835b602083101515610cef5780518252602082019150602081019050602083039250610cca565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b6003856040518082805190602001908083835b602083101515610d995780518252602082019150602081019050602083039250610d74565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209050600081805490501115610e9857806001828054905003815481101515610df057fe5b906000526020600020015484111515610e97576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d8152602001807f6e65772076657273696f6e206d7573742062652067726561746572207468616e81526020017f206f6c642076657273696f6e730000000000000000000000000000000000000081525060400191505060405180910390fd5b5b80849080600181540180825580915050906001820390600052602060002001600090919290919091505550826004866040518082805190602001908083835b602083101515610efc5780518252602082019150602081019050602083039250610ed7565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020600086815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610fe057600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482060405160405180910390a260008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561110757600080fd5b6111108161118b565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561116e57600080fd5b6001600060146101000a81548160ff021916908315150217905550565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156111c757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106112c657805160ff19168380011785556112f4565b828001600101855582156112f4579182015b828111156112f35782518255916020019190600101906112d8565b5b5090506113019190611305565b5090565b61132791905b8082111561132357600081600090555060010161130b565b5090565b905600a165627a7a723058203c4cf6901909326c971da91f5539dd3ce0a458e3132ccbac3c9daec69fe559df0029",
"deployedBytecode": "0x6080604052600436106100a4576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063121a42c0146100a957806324d48c0d1461014f5780632a4798da1461017a5780632cf5cf8b146102235780635147fba1146102e15780635dc1aad314610394578063715018a6146104275780638da5cb5b1461043e578063f2fde38b14610495578063fcfff16f146104d8575b600080fd5b3480156100b557600080fd5b506100d4600480360381019080803590602001909291905050506104ef565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101145780820151818401526020810190506100f9565b50505050905090810190601f1680156101415780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561015b57600080fd5b506101646105aa565b6040518082815260200191505060405180910390f35b34801561018657600080fd5b506101e1600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506105b7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561022f57600080fd5b5061028a600480360381019080803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506106eb565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156102cd5780820151818401526020810190506102b2565b505050509050019250505060405180910390f35b3480156102ed57600080fd5b50610352600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001909291905050506107ae565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103a057600080fd5b50610425600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610855565b005b34801561043357600080fd5b5061043c610f85565b005b34801561044a57600080fd5b50610453611087565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156104a157600080fd5b506104d6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506110ac565b005b3480156104e457600080fd5b506104ed611113565b005b606060018281548110151561050057fe5b906000526020600020018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561059e5780601f106105735761010080835404028352916020019161059e565b820191906000526020600020905b81548152906001019060200180831161058157829003601f168201915b50505050509050919050565b6000600180549050905090565b6000806003836040518082805190602001908083835b6020831015156105f257805182526020820191506020810190506020830392506105cd565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902090506004836040518082805190602001908083835b60208310151561065f578051825260208201915060208101905060208303925061063a565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060008260018480549050038154811015156106a957fe5b9060005260206000200154815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915050919050565b60606003826040518082805190602001908083835b6020831015156107255780518252602082019150602081019050602083039250610700565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390208054806020026020016040519081016040528092919081815260200182805480156107a257602002820191906000526020600020905b81548152602001906001019080831161078e575b50505050509050919050565b60006004836040518082805190602001908083835b6020831015156107e857805182526020820191506020810190506020830392506107c3565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b600080600060149054906101000a900460ff16806108bf57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b15156108ca57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166301ffc9a7806040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180827c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001915050602060405180830381600087803b15801561097757600080fd5b505af115801561098b573d6000803e3d6000fd5b505050506040513d60208110156109a157600080fd5b810190808051906020019092919050505015156109bd57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166301ffc9a763d48445ff6040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180827c0100000000000000000000000000000000000000000000000000000000027bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001915050602060405180830381600087803b158015610a6e57600080fd5b505af1158015610a82573d6000803e3d6000fd5b505050506040513d6020811015610a9857600080fd5b81019080805190602001909291905050501515610ab457600080fd5b6002856040518082805190602001908083835b602083101515610aec5780518252602082019150602081019050602083039250610ac7565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480610ba857503373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b1515610c42576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260338152602001807f6964656e74696669657220616c7265616479207265676973746572656420627981526020017f20616e6f746865722072656769737472616e740000000000000000000000000081525060400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610d61576001859080600181540180825580915050906001820390600052602060002001600090919290919091509080519060200190610cb4929190611285565b5050336002866040518082805190602001908083835b602083101515610cef5780518252602082019150602081019050602083039250610cca565b6001836020036101000a038019825116818451168082178552505050505050905001915050908152602001604051809103902060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b6003856040518082805190602001908083835b602083101515610d995780518252602082019150602081019050602083039250610d74565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390209050600081805490501115610e9857806001828054905003815481101515610df057fe5b906000526020600020015484111515610e97576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d8152602001807f6e65772076657273696f6e206d7573742062652067726561746572207468616e81526020017f206f6c642076657273696f6e730000000000000000000000000000000000000081525060400191505060405180910390fd5b5b80849080600181540180825580915050906001820390600052602060002001600090919290919091505550826004866040518082805190602001908083835b602083101515610efc5780518252602082019150602081019050602083039250610ed7565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020600086815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610fe057600080fd5b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167ff8df31144d9c2f0f6b59d69b8b98abd5459d07f2742c4df920b25aae33c6482060405160405180910390a260008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561110757600080fd5b6111108161118b565b50565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561116e57600080fd5b6001600060146101000a81548160ff021916908315150217905550565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156111c757600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106112c657805160ff19168380011785556112f4565b828001600101855582156112f4579182015b828111156112f35782518255916020019190600101906112d8565b5b5090506113019190611305565b5090565b61132791905b8082111561132357600081600090555060010161130b565b5090565b905600a165627a7a723058203c4cf6901909326c971da91f5539dd3ce0a458e3132ccbac3c9daec69fe559df0029",
"sourceMap": "141:2670:17:-;;;407:76;8:9:-1;5:2;;;30:1;27;20:12;5:2;407:76:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;575:10:39;567:5;;:18;;;;;;;;;;;;;;;;;;469:7:17;460:6;;:16;;;;;;;;;;;;;;;;;;407:76;141:2670;;;;;;",
"deployedSourceMap": "141:2670:17:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2116:118;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2116:118:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2116:118:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2005:105;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2005:105:17;;;;;;;;;;;;;;;;;;;;;;;2557:252;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2557:252:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2240:134;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2240:134:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2240:134:17;;;;;;;;;;;;;;;;;2380:171;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2380:171:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1003:996;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1003:996:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1001:111:39;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1001:111:39;;;;;;238:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;238:20:39;;;;;;;;;;;;;;;;;;;;;;;;;;;1274:103;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1274:103:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;567:63:17;;8:9:-1;5:2;;;30:1;27;20:12;5:2;567:63:17;;;;;;2116:118;2172:17;2208:11;2220:6;2208:19;;;;;;;;;;;;;;;;;2201:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2116:118;;;:::o;2005:105::-;2057:9;2085:11;:18;;;;2078:25;;2005:105;:::o;2557:252::-;2624:17;2653:23;2679:20;2700:11;2679:33;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2679:33:17;;;;;;;;;;;;;;;;;;;;;2653:59;;2729:29;2759:11;2729:42;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2729:42:17;;;;;;;;;;;;;;;;;;;;;:73;2772:8;2799:1;2781:8;:15;;;;:19;2772:29;;;;;;;;;;;;;;;;;;2729:73;;;;;;;;;;;;;;;;;;;;;2722:80;;2557:252;;;;:::o;2240:134::-;2301:14;2334:20;2355:11;2334:33;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2334:33:17;;;;;;;;;;;;;;;;;;;;;2327:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2240:134;;;:::o;2380:171::-;2456:17;2492:29;2522:11;2492:42;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;2492:42:17;;;;;;;;;;;;;;;;;;;;;:52;2535:8;2492:52;;;;;;;;;;;;;;;;;;;;;2485:59;;2380:171;;;;:::o;1003:996::-;1321:18;1669:23;1101:6;;;;;;;;;;;:29;;;;1125:5;;;;;;;;;;;1111:19;;:10;:19;;;1101:29;1093:38;;;;;;;;1180:9;:27;;;1208:10;1180:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1180:39:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1180:39:17;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1180:39:17;;;;;;;;;;;;;;;;1172:48;;;;;;;;1270:9;:27;;;1298:10;1270:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1270:39:17;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1270:39:17;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1270:39:17;;;;;;;;;;;;;;;;1262:48;;;;;;;;1342:22;1365:11;1342:35;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1342:35:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1321:56;;1417:1;1395:24;;:10;:24;;;:52;;;;1437:10;1423:24;;:10;:24;;;1395:52;1387:116;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1539:1;1517:24;;:10;:24;;;1513:146;;;1557:11;1574;1557:29;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;1557:29:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;1638:10;1600:22;1623:11;1600:35;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1600:35:17;;;;;;;;;;;;;;;;;;;;;;:48;;;;;;;;;;;;;;;;;;1513:146;1695:20;1716:11;1695:33;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1695:33:17;;;;;;;;;;;;;;;;;;;;;1669:59;;1760:1;1742:8;:15;;;;:19;1738:148;;;1796:8;1823:1;1805:8;:15;;;;:19;1796:29;;;;;;;;;;;;;;;;;;1785:8;:40;1777:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1738:148;1895:8;1909;1895:23;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;1895:23:17;;;;;;;;;;;;;;;;;;;;;;1983:9;1928:29;1958:11;1928:42;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;1928:42:17;;;;;;;;;;;;;;;;;;;;;:52;1971:8;1928:52;;;;;;;;;;;;:64;;;;;;;;;;;;;;;;;;1003:996;;;;;:::o;1001:111:39:-;719:5;;;;;;;;;;;705:19;;:10;:19;;;697:28;;;;;;;;1077:5;;;;;;;;;;;1058:25;;;;;;;;;;;;1105:1;1089:5;;:18;;;;;;;;;;;;;;;;;;1001:111::o;238:20::-;;;;;;;;;;;;;:::o;1274:103::-;719:5;;;;;;;;;;;705:19;;:10;:19;;;697:28;;;;;;;;1343:29;1362:9;1343:18;:29::i;:::-;1274:103;:::o;567:63:17:-;719:5:39;;;;;;;;;;;705:19;;:10;:19;;;697:28;;;;;;;;619:4:17;610:6;;:13;;;;;;;;;;;;;;;;;;567:63::o;1512:171:39:-;1603:1;1582:23;;:9;:23;;;;1574:32;;;;;;;;1645:9;1617:38;;1638:5;;;;;;;;;;;1617:38;;;;;;;;;;;;1669:9;1661:5;;:17;;;;;;;;;;;;;;;;;;1512:171;:::o;141:2670:17:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
"source": "pragma solidity ^0.4.24;\n\nimport \"../template/Template.sol\";\n\n/**\n * @title Registry\n * @notice Registry maintains Contracts by version.\n */\ncontract Registry is Ownable {\n bool opened;\n string[] identifiers;\n mapping(string => address) registrantOfIdentifier;\n mapping(string => uint[]) versionsOfIdentifier;\n mapping(string => mapping(uint => Template)) templateOfVersionOfIdentifier;\n\n constructor(bool _opened) Ownable() public {\n opened = _opened;\n }\n\n /**\n * @notice Open the Registry so that anyone can register.\n */\n function open() onlyOwner public {\n opened = true;\n }\n\n /**\n * @notice Registers a new `Template`.\n * @param _identifier If any template was registered for the same identifier, the registrant of the templates must be the same.\n * @param _version If any template was registered for the same identifier, new version must be greater than the old one.\n * @param _template Template to be registered.\n */\n function register(string _identifier, uint _version, Template _template) public {\n require(opened || msg.sender == owner);\n\n // InterfaceId_ERC165\n require(_template.supportsInterface(0x01ffc9a7));\n // InterfaceId_Template\n require(_template.supportsInterface(0xd48445ff));\n\n address registrant = registrantOfIdentifier[_identifier];\n require(registrant == address(0) || registrant == msg.sender, \"identifier already registered by another registrant\");\n if (registrant == address(0)) {\n identifiers.push(_identifier);\n registrantOfIdentifier[_identifier] = msg.sender;\n }\n\n uint[] storage versions = versionsOfIdentifier[_identifier];\n if (versions.length > 0) {\n require(_version > versions[versions.length - 1], \"new version must be greater than old versions\");\n }\n versions.push(_version);\n templateOfVersionOfIdentifier[_identifier][_version] = _template;\n }\n\n function numberOfIdentifiers() public view returns (uint size) {\n return identifiers.length;\n }\n\n function identifierAt(uint _index) public view returns (string identifier) {\n return identifiers[_index];\n }\n\n function versionsOf(string _identifier) public view returns (uint[] version) {\n return versionsOfIdentifier[_identifier];\n }\n\n function templateOf(string _identifier, uint _version) public view returns (Template template) {\n return templateOfVersionOfIdentifier[_identifier][_version];\n }\n\n function latestTemplateOf(string _identifier) public view returns (Template template) {\n uint[] storage versions = versionsOfIdentifier[_identifier];\n return templateOfVersionOfIdentifier[_identifier][versions[versions.length - 1]];\n }\n}\n",
"sourcePath": "tokenboost-solidity/contracts/registry/Registry.sol",
"ast": {
"absolutePath": "tokenboost-solidity/contracts/registry/Registry.sol",
"exportedSymbols": {
"Registry": [
2212
]
},
"id": 2213,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1976,
"literals": [
"solidity",
"^",
"0.4",
".24"
],
"nodeType": "PragmaDirective",
"src": "0:24:17"
},
{
"absolutePath": "tokenboost-solidity/contracts/template/Template.sol",
"file": "../template/Template.sol",
"id": 1977,
"nodeType": "ImportDirective",
"scope": 2213,
"sourceUnit": 3129,
"src": "26:34:17",
"symbolAliases": [],
"unitAlias": ""
},
{
"baseContracts": [
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 1978,
"name": "Ownable",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 6426,
"src": "162:7:17",
"typeDescriptions": {
"typeIdentifier": "t_contract$_Ownable_$6426",
"typeString": "contract Ownable"
}
},
"id": 1979,
"nodeType": "InheritanceSpecifier",
"src": "162:7:17"
}
],
"contractDependencies": [
6426
],
"contractKind": "contract",
"documentation": "@title Registry\n@notice Registry maintains Contracts by version.",
"fullyImplemented": true,
"id": 2212,
"linearizedBaseContracts": [
2212,
6426
],
"name": "Registry",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 1981,
"name": "opened",
"nodeType": "VariableDeclaration",
"scope": 2212,
"src": "176:11:17",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 1980,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "176:4:17",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1984,
"name": "identifiers",
"nodeType": "VariableDeclaration",
"scope": 2212,
"src": "193:20:17",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_string_storage_$dyn_storage",
"typeString": "string[]"
},
"typeName": {
"baseType": {
"id": 1982,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "193:6:17",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"id": 1983,
"length": null,
"nodeType": "ArrayTypeName",
"src": "193:8:17",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
"typeString": "string[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1988,
"name": "registrantOfIdentifier",
"nodeType": "VariableDeclaration",
"scope": 2212,
"src": "219:49:17",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_string_memory_$_t_address_$",
"typeString": "mapping(string => address)"
},
"typeName": {
"id": 1987,
"keyType": {
"id": 1985,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "227:6:17",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"nodeType": "Mapping",
"src": "219:26:17",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_string_memory_$_t_address_$",
"typeString": "mapping(string => address)"
},
"valueType": {
"id": 1986,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "237:7:17",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1993,
"name": "versionsOfIdentifier",
"nodeType": "VariableDeclaration",
"scope": 2212,
"src": "274:46:17",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_string_memory_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(string => uint256[])"
},
"typeName": {
"id": 1992,
"keyType": {
"id": 1989,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "282:6:17",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"nodeType": "Mapping",
"src": "274:25:17",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_string_memory_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(string => uint256[])"
},
"valueType": {
"baseType": {
"id": 1990,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "292:4:17",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1991,
"length": null,
"nodeType": "ArrayTypeName",
"src": "292:6:17",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1999,
"name": "templateOfVersionOfIdentifier",
"nodeType": "VariableDeclaration",
"scope": 2212,
"src": "326:74:17",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_string_memory_$_t_mapping$_t_uint256_$_t_contract$_Template_$3128_$_$",
"typeString": "mapping(string => mapping(uint256 => contract Template))"
},
"typeName": {
"id": 1998,
"keyType": {
"id": 1994,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "334:6:17",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"nodeType": "Mapping",
"src": "326:44:17",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_string_memory_$_t_mapping$_t_uint256_$_t_contract$_Template_$3128_$_$",
"typeString": "mapping(string => mapping(uint256 => contract Template))"
},
"valueType": {
"id": 1997,
"keyType": {
"id": 1995,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "352:4:17",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Mapping",
"src": "344:25:17",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_uint256_$_t_contract$_Template_$3128_$",
"typeString": "mapping(uint256 => contract Template)"
},
"valueType": {
"contractScope": null,
"id": 1996,
"name": "Template",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 3128,
"src": "360:8:17",
"typeDescriptions": {
"typeIdentifier": "t_contract$_Template_$3128",
"typeString": "contract Template"
}
}
}
},
"value": null,
"visibility": "internal"
},
{
"body": {
"id": 2010,
"nodeType": "Block",
"src": "450:33:17",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 2008,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 2006,
"name": "opened",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1981,
"src": "460:6:17",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 2007,
"name": "_opened",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2001,
"src": "469:7:17",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"src": "460:16:17",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 2009,
"nodeType": "ExpressionStatement",
"src": "460:16:17"
}
]
},
"documentation": null,
"id": 2011,
"implemented": true,
"isConstructor": true,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [],
"id": 2004,
"modifierName": {
"argumentTypes": null,
"id": 2003,
"name": "Ownable",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 6426,
"src": "433:7:17",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_contract$_Ownable_$6426_$",
"typeString": "type(contract Ownable)"
}
},
"nodeType": "ModifierInvocation",
"src": "433:9:17"
}
],
"name": "",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 2002,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2001,
"name": "_opened",
"nodeType": "VariableDeclaration",
"scope": 2011,
"src": "419:12:17",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 2000,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "419:4:17",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "418:14:17"
},
"payable": false,
"returnParameters": {
"id": 2005,
"nodeType": "ParameterList",
"parameters": [],
"src": "450:0:17"
},
"scope": 2212,
"src": "407:76:17",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 2020,
"nodeType": "Block",
"src": "600:30:17",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 2018,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 2016,
"name": "opened",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1981,
"src": "610:6:17",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "Assignment",
"operator": "=",