@tokenz/tokens-smartcontract-sdk
Version:
Smart Contract SDK for Tokenz STO platform
615 lines (614 loc) • 255 kB
JSON
{
"contractName": "ruleEngine",
"abi": [
{
"constant": true,
"inputs": [
{
"name": "",
"type": "bytes32"
}
],
"name": "ruleSet",
"outputs": [
{
"name": "fromcontractCategory",
"type": "bytes8"
},
{
"name": "fromcontractType",
"type": "bytes8"
},
{
"name": "tocontractCategory",
"type": "bytes8"
},
{
"name": "tocontractType",
"type": "bytes8"
},
{
"name": "state",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "macAddr",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"name": "_macAddr",
"type": "address"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"constant": false,
"inputs": [
{
"name": "fromcontractCategory",
"type": "bytes8"
},
{
"name": "fromcontractType",
"type": "bytes8"
},
{
"name": "tocontractCategory",
"type": "bytes8"
},
{
"name": "tocontractType",
"type": "bytes8"
}
],
"name": "addRule",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "ruleHash",
"type": "bytes32"
}
],
"name": "disableRule",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "ruleHash",
"type": "bytes32"
}
],
"name": "enableRule",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_hash",
"type": "bytes32"
}
],
"name": "checkRule",
"outputs": [
{
"name": "result",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "fromcontractCategory",
"type": "bytes8"
},
{
"name": "fromcontractType",
"type": "bytes8"
},
{
"name": "tocontractCategory",
"type": "bytes8"
},
{
"name": "tocontractType",
"type": "bytes8"
}
],
"name": "fetchHash",
"outputs": [
{
"name": "hash",
"type": "bytes32"
}
],
"payable": false,
"stateMutability": "pure",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "fromcontractCategory",
"type": "bytes8"
},
{
"name": "fromcontractType",
"type": "bytes8"
},
{
"name": "tocontractCategory",
"type": "bytes8"
},
{
"name": "tocontractType",
"type": "bytes8"
}
],
"name": "ruleCheck",
"outputs": [
{
"name": "result",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x608060405234801561001057600080fd5b5060405160208061167c8339810180604052810190808051906020019092919050505080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506115b8806100c46000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633a0b581c146100935780635e4d25fa146100c457806370307eee1461010d578063743dcf55146101c457806377281f8414610297578063859a54c8146103665780639767d4c2146104a3578063c6edf452146104d4575b600080fd5b34801561009f57600080fd5b506100c2600480360381019080803560001916906020019092919050505061052b565b005b3480156100d057600080fd5b506100f3600480360381019080803560001916906020019092919050505061089f565b604051808215151515815260200191505060405180910390f35b34801561011957600080fd5b506101c2600480360381019080803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff191690602001909291905050506108ef565b005b3480156101d057600080fd5b50610279600480360381019080803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610f79565b60405180826000191660001916815260200191505060405180910390f35b3480156102a357600080fd5b5061034c600480360381019080803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff191690602001909291905050506110f7565b604051808215151515815260200191505060405180910390f35b34801561037257600080fd5b50610395600480360381019080803560001916906020019092919050505061111c565b604051808677ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018577ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018477ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff19168152602001821515151581526020019550505050505060405180910390f35b3480156104af57600080fd5b506104d260048036038101908080356000191690602001909291905050506111f3565b005b3480156104e057600080fd5b506104e9611567565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b7f60e4bc6916f055bd8ec78b0fb09acc593683868e7489071f28e97f17a67023c2600102600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663635912d5600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166382f6f815336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561064a57600080fd5b505af115801561065e573d6000803e3d6000fd5b505050506040513d602081101561067457600080fd5b8101908080519060200190929190505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166305ad1456856040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b15801561071e57600080fd5b505af1158015610732573d6000803e3d6000fd5b505050506040513d602081101561074857600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200192505050602060405180830381600087803b15801561081e57600080fd5b505af1158015610832573d6000803e3d6000fd5b505050506040513d602081101561084857600080fd5b8101908080519060200190929190505050151561086457600080fd5b600160026000846000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b60006001151560026000846000191660001916815260200190815260200160002060010160009054906101000a900460ff16151514156108e257600190506108e7565b600090505b809050919050565b7fdc8c5285248a3c5cb78de74aec47a8235cf224f0eba5534ac0843c08fb94e155600102600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663635912d5600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166382f6f815336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015610a0e57600080fd5b505af1158015610a22573d6000803e3d6000fd5b505050506040513d6020811015610a3857600080fd5b8101908080519060200190929190505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166305ad1456856040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b158015610ae257600080fd5b505af1158015610af6573d6000803e3d6000fd5b505050506040513d6020811015610b0c57600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200192505050602060405180830381600087803b158015610be257600080fd5b505af1158015610bf6573d6000803e3d6000fd5b505050506040513d6020811015610c0c57600080fd5b81019080805190602001909291905050501515610c2857600080fd5b60a0604051908101604052808677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018577ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018477ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018377ffffffffffffffffffffffffffffffffffffffffffffffff19168152602001600115158152506002600087878787604051602001808577ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018477ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610e085780518252602082019150602081019050602083039250610de3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555060208201518160000160086101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555060408201518160000160106101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555060608201518160000160186101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555060808201518160010160006101000a81548160ff0219169083151502179055509050505050505050565b600084848484604051602001808577ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018477ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008019450505050506040516020818303038152906040526040518082805190602001908083835b6020831015156110c0578051825260208201915060208101905060208303925061109b565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050949350505050565b60008061110686868686610f79565b90506111118161089f565b915050949350505050565b60026020528060005260406000206000915090508060000160009054906101000a9004780100000000000000000000000000000000000000000000000002908060000160089054906101000a9004780100000000000000000000000000000000000000000000000002908060000160109054906101000a9004780100000000000000000000000000000000000000000000000002908060000160189054906101000a9004780100000000000000000000000000000000000000000000000002908060010160009054906101000a900460ff16905085565b7fa48594fcd0c5e85901eb04704a60bdec055e99ace219c1bc71cc57071daae99c600102600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663635912d5600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166382f6f815336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561131257600080fd5b505af1158015611326573d6000803e3d6000fd5b505050506040513d602081101561133c57600080fd5b8101908080519060200190929190505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166305ad1456856040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b1580156113e657600080fd5b505af11580156113fa573d6000803e3d6000fd5b505050506040513d602081101561141057600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200192505050602060405180830381600087803b1580156114e657600080fd5b505af11580156114fa573d6000803e3d6000fd5b505050506040513d602081101561151057600080fd5b8101908080519060200190929190505050151561152c57600080fd5b600060026000846000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a723058207293ad6e4b5e083d014f6613c827cdca9dbe6f7959c81c1002c05ff17c5fe2400029",
"deployedBytecode": "0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680633a0b581c146100935780635e4d25fa146100c457806370307eee1461010d578063743dcf55146101c457806377281f8414610297578063859a54c8146103665780639767d4c2146104a3578063c6edf452146104d4575b600080fd5b34801561009f57600080fd5b506100c2600480360381019080803560001916906020019092919050505061052b565b005b3480156100d057600080fd5b506100f3600480360381019080803560001916906020019092919050505061089f565b604051808215151515815260200191505060405180910390f35b34801561011957600080fd5b506101c2600480360381019080803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff191690602001909291905050506108ef565b005b3480156101d057600080fd5b50610279600480360381019080803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610f79565b60405180826000191660001916815260200191505060405180910390f35b3480156102a357600080fd5b5061034c600480360381019080803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff191690602001909291905050506110f7565b604051808215151515815260200191505060405180910390f35b34801561037257600080fd5b50610395600480360381019080803560001916906020019092919050505061111c565b604051808677ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018577ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018477ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff19168152602001821515151581526020019550505050505060405180910390f35b3480156104af57600080fd5b506104d260048036038101908080356000191690602001909291905050506111f3565b005b3480156104e057600080fd5b506104e9611567565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b7f60e4bc6916f055bd8ec78b0fb09acc593683868e7489071f28e97f17a67023c2600102600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663635912d5600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166382f6f815336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561064a57600080fd5b505af115801561065e573d6000803e3d6000fd5b505050506040513d602081101561067457600080fd5b8101908080519060200190929190505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166305ad1456856040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b15801561071e57600080fd5b505af1158015610732573d6000803e3d6000fd5b505050506040513d602081101561074857600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200192505050602060405180830381600087803b15801561081e57600080fd5b505af1158015610832573d6000803e3d6000fd5b505050506040513d602081101561084857600080fd5b8101908080519060200190929190505050151561086457600080fd5b600160026000846000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b60006001151560026000846000191660001916815260200190815260200160002060010160009054906101000a900460ff16151514156108e257600190506108e7565b600090505b809050919050565b7fdc8c5285248a3c5cb78de74aec47a8235cf224f0eba5534ac0843c08fb94e155600102600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663635912d5600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166382f6f815336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015610a0e57600080fd5b505af1158015610a22573d6000803e3d6000fd5b505050506040513d6020811015610a3857600080fd5b8101908080519060200190929190505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166305ad1456856040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b158015610ae257600080fd5b505af1158015610af6573d6000803e3d6000fd5b505050506040513d6020811015610b0c57600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200192505050602060405180830381600087803b158015610be257600080fd5b505af1158015610bf6573d6000803e3d6000fd5b505050506040513d6020811015610c0c57600080fd5b81019080805190602001909291905050501515610c2857600080fd5b60a0604051908101604052808677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018577ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018477ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018377ffffffffffffffffffffffffffffffffffffffffffffffff19168152602001600115158152506002600087878787604051602001808577ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018477ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008019450505050506040516020818303038152906040526040518082805190602001908083835b602083101515610e085780518252602082019150602081019050602083039250610de3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191660001916815260200190815260200160002060008201518160000160006101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555060208201518160000160086101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555060408201518160000160106101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555060608201518160000160186101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555060808201518160010160006101000a81548160ff0219169083151502179055509050505050505050565b600084848484604051602001808577ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018477ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526008019450505050506040516020818303038152906040526040518082805190602001908083835b6020831015156110c0578051825260208201915060208101905060208303925061109b565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390209050949350505050565b60008061110686868686610f79565b90506111118161089f565b915050949350505050565b60026020528060005260406000206000915090508060000160009054906101000a9004780100000000000000000000000000000000000000000000000002908060000160089054906101000a9004780100000000000000000000000000000000000000000000000002908060000160109054906101000a9004780100000000000000000000000000000000000000000000000002908060000160189054906101000a9004780100000000000000000000000000000000000000000000000002908060010160009054906101000a900460ff16905085565b7fa48594fcd0c5e85901eb04704a60bdec055e99ace219c1bc71cc57071daae99c600102600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663635912d5600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166382f6f815336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561131257600080fd5b505af1158015611326573d6000803e3d6000fd5b505050506040513d602081101561133c57600080fd5b8101908080519060200190929190505050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166305ad1456856040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b1580156113e657600080fd5b505af11580156113fa573d6000803e3d6000fd5b505050506040513d602081101561141057600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200192505050602060405180830381600087803b1580156114e657600080fd5b505af11580156114fa573d6000803e3d6000fd5b505050506040513d602081101561151057600080fd5b8101908080519060200190929190505050151561152c57600080fd5b600060026000846000191660001916815260200190815260200160002060010160006101000a81548160ff0219169083151502179055505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a723058207293ad6e4b5e083d014f6613c827cdca9dbe6f7959c81c1002c05ff17c5fe2400029",
"sourceMap": "55:2370:9:-;;;516:122;8:9:-1;5:2;;;30:1;27;20:12;5:2;516:122:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;594:8;575:4;;:28;;;;;;;;;;;;;;;;;;623:8;613:7;;:18;;;;;;;;;;;;;;;;;;516:122;55:2370;;;;;;",
"deployedSourceMap": "55:2370:9:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1314:194;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1314:194:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1514:254;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1514:254:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;668:438;;8:9:-1;5:2;;;30:1;27;20:12;5:2;668:438:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1774:308;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1774:308:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2088:335;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2088:335:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;133:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;133:41:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1112:196;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1112:196:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;81:22;;8:9:-1;5:2;;;30:1;27;20:12;5:2;81:22:9;;;;;;;;;;;;;;;;;;;;;;;;;;;1314:194;1374:66;368:142;;426:4;;;;;;;;;;;:20;;;447:4;;;;;;;;;;;:12;;;460:10;447:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;447:24:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;447:24:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;447:24:9;;;;;;;;;;;;;;;;472:4;;;;;;;;;;;:11;;;484:5;472:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;472:18:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;472:18:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;472:18:9;;;;;;;;;;;;;;;;426:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;426:65:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;426:65:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;426:65:9;;;;;;;;;;;;;;;;418:74;;;;;;;;1497:4;1471:7;:17;1479:8;1471:17;;;;;;;;;;;;;;;;;:23;;;:30;;;;;;;;;;;;;;;;;;1314:194;;:::o;1514:254::-;1594:11;1651:4;1627:28;;:7;:14;1635:5;1627:14;;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;:28;;;1622:117;;;1681:4;1672:13;;1622:117;;;1723:5;1714:14;;1622:117;1755:6;1748:13;;1514:254;;;:::o;668:438::-;808:66;368:142;;426:4;;;;;;;;;;;:20;;;447:4;;;;;;;;;;;:12;;;460:10;447:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;447:24:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;447:24:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;447:24:9;;;;;;;;;;;;;;;;472:4;;;;;;;;;;;:11;;;484:5;472:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;472:18:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;472:18:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;472:18:9;;;;;;;;;;;;;;;;426:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;426:65:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;426:65:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;426:65:9;;;;;;;;;;;;;;;;418:74;;;;;;;;1017:82;;;;;;;;;1022:20;1017:82;;;;;;;1043:16;1017:82;;;;;;;1060:18;1017:82;;;;;;;1079:14;1017:82;;;;;;;1094:4;1017:82;;;;;905:7;:109;940:20;961:16;978:18;997:14;923:89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;923:89:9;;;913:100;;;;;;;;;;;;;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;;;913:100:9;;;;;;;;;;;;;;;;905:109;;;;;;;;;;;;;;;;;:194;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;668:438;;;;;:::o;1774:308::-;1939:12;2002:20;2023:16;2040:18;2059:14;1985:89;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1985:89:9;;;1975:100;;;;;;;;;;;;;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;;;1975:100:9;;;;;;;;;;;;;;;;1968:107;;1774:308;;;;;;:::o;2088:335::-;2255:11;2283:13;2299:82;2309:20;2330:16;2347:18;2366:14;2299:9;:82::i;:::-;2283:98;;2400:16;2410:5;2400:9;:16::i;:::-;2391:25;;2088:335;;;;;;;:::o;133:41::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1112:196::-;1173:66;368:142;;426:4;;;;;;;;;;;:20;;;447:4;;;;;;;;;;;:12;;;460:10;447:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;447:24:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;447:24:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;447:24:9;;;;;;;;;;;;;;;;472:4;;;;;;;;;;;:11;;;484:5;472:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;472:18:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;472:18:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;472:18:9;;;;;;;;;;;;;;;;426:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;426:65:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;426:65:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;426:65:9;;;;;;;;;;;;;;;;418:74;;;;;;;;1296:5;1270:7;:17;1278:8;1270:17;;;;;;;;;;;;;;;;;:23;;;:31;;;;;;;;;;;;;;;;;;1112:196;;:::o;81:22::-;;;;;;;;;;;;;:::o",
"source": "pragma solidity ^0.4.25;\n\nimport \"./macContract.sol\";\n\ncontract ruleEngine{\n\n address public macAddr;\n\n macContract macC;\n\n mapping (bytes32 => rule ) public ruleSet;\n\n struct rule{\n bytes8 fromcontractCategory;\n bytes8 fromcontractType;\n bytes8 tocontractCategory;\n bytes8 tocontractType;\n bool state;\n }\n\n modifier mod_checkPerm( bytes32 objid ) {\n require(macC.permissionCheck(macC.subject(msg.sender),macC.object(objid)));\n _;\n }\n\n constructor(address _macAddr)\n public\n {\n macC = macContract(_macAddr);\n macAddr = _macAddr;\n }\n\n // Governance Rules\n function addRule(bytes8 fromcontractCategory,bytes8 fromcontractType,bytes8 tocontractCategory,bytes8 tocontractType)\n mod_checkPerm(0xdc8c5285248a3c5cb78de74aec47a8235cf224f0eba5534ac0843c08fb94e155)\n public\n {\n ruleSet[keccak256(abi.encodePacked(fromcontractCategory,fromcontractType,tocontractCategory,tocontractType))] = rule(fromcontractCategory,fromcontractType,tocontractCategory,tocontractType,true);\n }\n\n function disableRule(bytes32 ruleHash)\n mod_checkPerm(0xa48594fcd0c5e85901eb04704a60bdec055e99ace219c1bc71cc57071daae99c)\n public\n {\n ruleSet[ruleHash].state = false;\n }\n\n function enableRule(bytes32 ruleHash)\n mod_checkPerm(0x60e4bc6916f055bd8ec78b0fb09acc593683868e7489071f28e97f17a67023c2)\n public\n {\n ruleSet[ruleHash].state = true;\n }\n\n function checkRule(bytes32 _hash)\n public\n view\n returns ( bool result )\n {\n if ( ruleSet[_hash].state == true ){\n result = true;\n }else{\n result = false;\n }\n return result;\n }\n\n function fetchHash(bytes8 fromcontractCategory,bytes8 fromcontractType,bytes8 tocontractCategory,bytes8 tocontractType)\n public\n pure\n returns( bytes32 hash )\n {\n hash = keccak256(abi.encodePacked(fromcontractCategory,fromcontractType,tocontractCategory,tocontractType));\n }\n\n function ruleCheck (bytes8 fromcontractCategory,bytes8 fromcontractType,bytes8 tocontractCategory,bytes8 tocontractType)\n public\n view\n returns ( bool result )\n {\n bytes32 _hash = fetchHash(fromcontractCategory,fromcontractType,tocontractCategory,tocontractType);\n result = checkRule(_hash);\n }\n}",
"sourcePath": "/contracts/governance/ruleEngine.sol",
"ast": {
"absolutePath": "/contracts/governance/ruleEngine.sol",
"exportedSymbols": {
"ruleEngine": [
1532
]
},
"id": 1533,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1325,
"literals": [
"solidity",
"^",
"0.4",
".25"
],
"nodeType": "PragmaDirective",
"src": "0:24:9"
},
{
"absolutePath": "/contracts/governance/macContract.sol",
"file": "./macContract.sol",
"id": 1326,
"nodeType": "ImportDirective",
"scope": 1533,
"sourceUnit": 1324,
"src": "26:27:9",
"symbolAliases": [],
"unitAlias": ""
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 1532,
"linearizedBaseContracts": [
1532
],
"name": "ruleEngine",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 1328,
"name": "macAddr",
"nodeType": "VariableDeclaration",
"scope": 1532,
"src": "81:22:9",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1327,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "81:7:9",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "public"
},
{
"constant": false,
"id": 1330,
"name": "macC",
"nodeType": "VariableDeclaration",
"scope": 1532,
"src": "110:16:9",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_contract$_macContract_$1323",
"typeString": "contract macContract"
},
"typeName": {
"contractScope": null,
"id": 1329,
"name": "macContract",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1323,
"src": "110:11:9",
"typeDescriptions": {
"typeIdentifier": "t_contract$_macContract_$1323",
"typeString": "contract macContract"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1334,
"name": "ruleSet",
"nodeType": "VariableDeclaration",
"scope": 1532,
"src": "133:41:9",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_rule_$1345_storage_$",
"typeString": "mapping(bytes32 => struct ruleEngine.rule)"
},
"typeName": {
"id": 1333,
"keyType": {
"id": 1331,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "142:7:9",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"nodeType": "Mapping",
"src": "133:26:9",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_rule_$1345_storage_$",
"typeString": "mapping(bytes32 => struct ruleEngine.rule)"
},
"valueType": {
"contractScope": null,
"id": 1332,
"name": "rule",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1345,
"src": "153:4:9",
"typeDescriptions": {
"typeIdentifier": "t_struct$_rule_$1345_storage_ptr",
"typeString": "struct ruleEngine.rule"
}
}
},
"value": null,
"visibility": "public"
},
{
"canonicalName": "ruleEngine.rule",
"id": 1345,
"members": [
{
"constant": false,
"id": 1336,
"name": "fromcontractCategory",
"nodeType": "VariableDeclaration",
"scope": 1345,
"src": "202:28:9",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes8",
"typeString": "bytes8"
},
"typeName": {
"id": 1335,
"name": "bytes8",
"nodeType": "ElementaryTypeName",
"src": "202:6:9",
"typeDescriptions": {
"typeIdentifier": "t_bytes8",
"typeString": "bytes8"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1338,
"name": "fromcontractType",
"nodeType": "VariableDeclaration",
"scope": 1345,
"src": "240:24:9",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes8",
"typeString": "bytes8"
},
"typeName": {
"id": 1337,
"name": "bytes8",
"nodeType": "ElementaryTypeName",
"src": "240:6:9",
"typeDescriptions": {
"typeIdentifier": "t_bytes8",
"typeString": "bytes8"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1340,
"name": "tocontractCategory",
"nodeType": "VariableDeclaration",
"scope": 1345,
"src": "274:26:9",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes8",
"typeString": "bytes8"
},
"typeName": {
"id": 1339,
"name": "bytes8",
"nodeType": "ElementaryTypeName",
"src": "274:6:9",
"typeDescriptions": {
"typeIdentifier": "t_bytes8",
"typeString": "bytes8"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1342,
"name": "tocontractType",
"nodeType": "VariableDeclaration",
"scope": 1345,
"src": "310:22:9",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes8",
"typeString": "bytes8"
},
"typeName": {
"id": 1341,
"name": "bytes8",
"nodeType": "ElementaryTypeName",
"src": "310:6:9",
"typeDescriptions": {
"typeIdentifier": "t_bytes8",
"typeString": "bytes8"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1344,
"name": "state",
"nodeType": "VariableDeclaration",
"scope": 1345,
"src": "342:13:9",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 1343,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "342:4:9",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"name": "rule",
"nodeType": "StructDefinition",
"scope": 1532,
"src": "181:181:9",
"visibility": "public"
},
{
"body": {
"id": 1365,
"nodeType": "Block",
"src": "408:102:9",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 1354,
"name": "msg",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2396,
"src": "460:3:9",
"typeDescriptions": {
"typeIdentifier": "t_magic_message",
"typeString": "msg"
}
},
"id": 1355,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sender",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "460:10:9",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"expression": {
"argumentTypes": null,
"id": 1352,
"name": "macC",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1330,
"src": "447:4:9",
"typeDescriptions": {
"typeIdentifier": "t_contract$_macContract_$1323",
"typeString": "contract macContract"
}
},
"id": 1353,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "subject",
"nodeType": "MemberAccess",
"referencedDeclaration": 1208,
"src": "447:12:9",
"typeDescriptions": {
"typeIdentifier": "t_function_external_view$_t_address_$returns$_t_bytes8_$",
"typeString": "function (address) view external returns (bytes8)"
}
},
"id": 1356,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "447:24:9",
"typeDescriptions": {
"typeIdentifier": "t_bytes8",
"typeString": "bytes8"
}
},
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 1359,
"name": "objid",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1347,
"src": "484:5:9",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
],
"expression": {
"argumentTypes": null,
"id": 1357,
"name": "macC",