@tokenz/tokens-smartcontract-sdk
Version:
Smart Contract SDK for Tokenz STO platform
759 lines (758 loc) • 176 kB
JSON
{
"contractName": "kycRegis",
"abi": [
{
"constant": true,
"inputs": [],
"name": "maCAddr",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "kycDS",
"outputs": [
{
"name": "kycHash",
"type": "bytes32"
},
{
"name": "permMap",
"type": "bytes8"
},
{
"name": "state",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "contractCategory",
"outputs": [
{
"name": "",
"type": "bytes8"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "kycProvider",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "ruCAddr",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [],
"name": "contractType",
"outputs": [
{
"name": "",
"type": "bytes8"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"name": "_maCAddr",
"type": "address"
},
{
"name": "_ruCAddr",
"type": "address"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "constructor"
},
{
"constant": false,
"inputs": [
{
"name": "_provider",
"type": "address"
}
],
"name": "enableServiceProvider",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_provider",
"type": "address"
}
],
"name": "disableServiceProvider",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_addr",
"type": "address"
},
{
"name": "_kycHash",
"type": "bytes32"
},
{
"name": "_kycMap",
"type": "bytes8"
},
{
"name": "_v",
"type": "uint8"
},
{
"name": "_r",
"type": "bytes32"
},
{
"name": "_s",
"type": "bytes32"
}
],
"name": "setKYCdetails",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": false,
"inputs": [
{
"name": "_addr",
"type": "address"
}
],
"name": "disableKYC",
"outputs": [],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_addr",
"type": "address"
},
{
"name": "_perm",
"type": "bytes8"
}
],
"name": "isValidKYCMap",
"outputs": [
{
"name": "result",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "_addr",
"type": "address"
}
],
"name": "isValidKYC",
"outputs": [
{
"name": "result",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x608060405234801561001057600080fd5b506040516040806114808339810180604052810190808051906020019092919080519060200190929190505050610090828260027801000000000000000000000000000000000000000000000000026001780100000000000000000000000000000000000000000000000002610097640100000000026401000000009004565b5050610216565b83600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550816000806101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555080600060086101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555050505050565b61125b806102256000396000f3006080604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680632864faea146100bf57806335bc07a6146101165780634a9f480e146101bd5780637381ea03146102005780638401ccc8146102615780638bac4396146103005780639abcff041461035b578063aa5ce959146103b6578063c34b59eb146103f9578063c6ca6da714610450578063cb2ef6f7146104d0578063d23a65c514610531575b600080fd5b3480156100cb57600080fd5b506100d4610574565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561012257600080fd5b50610157600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061059a565b6040518084600019166000191681526020018377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200182151515158152602001935050505060405180910390f35b3480156101c957600080fd5b506101fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105f6565b005b34801561020c57600080fd5b506102156106b3565b604051808277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b34801561026d57600080fd5b506102fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035600019169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803560ff169060200190929190803560001916906020019092919080356000191690602001909291905050506106dd565b005b34801561030c57600080fd5b50610341600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108bd565b604051808215151515815260200191505060405180910390f35b34801561036757600080fd5b5061039c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610916565b604051808215151515815260200191505060405180910390f35b3480156103c257600080fd5b506103f7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610936565b005b34801561040557600080fd5b5061040e610d2c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561045c57600080fd5b506104b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610d52565b604051808215151515815260200191505060405180910390f35b3480156104dc57600080fd5b506104e5610e0e565b604051808277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b34801561053d57600080fd5b50610572600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e39565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60056020528060005260406000206000915090508060000154908060010160009054906101000a9004780100000000000000000000000000000000000000000000000002908060010160089054906101000a900460ff16905083565b60011515600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514151561065557600080fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160086101000a81548160ff02191690831515021790555050565b6000809054906101000a900478010000000000000000000000000000000000000000000000000281565b848383836001151560066000600187878787604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610760573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415156107c057600080fd5b6060604051908101604052808a6000191681526020018977ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200160011515815250600560008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000019060001916905560208201518160010160006101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555060408201518160010160086101000a81548160ff02191690831515021790555090505050505050505050505050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160089054906101000a900460ff169050919050565b60066020528060005260406000206000915054906101000a900460ff1681565b8060001515600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514151561099657600080fd5b7f5543afb94ba7d5922e5114d78936a65c38979551726094230a3bbb2d4c808fe8600102600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663635912d5600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166382f6f815336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015610ab557600080fd5b505af1158015610ac9573d6000803e3d6000fd5b505050506040513d6020811015610adf57600080fd5b8101908080519060200190929190505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166305ad1456856040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b158015610b8957600080fd5b505af1158015610b9d573d6000803e3d6000fd5b505050506040513d6020811015610bb357600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200192505050602060405180830381600087803b158015610c8957600080fd5b505af1158015610c9d573d6000803e3d6000fd5b505050506040513d6020811015610cb357600080fd5b81019080805190602001909291905050501515610ccf57600080fd5b6001600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900478010000000000000000000000000000000000000000000000000290506000780100000000000000000000000000000000000000000000000002838483161877ffffffffffffffffffffffffffffffffffffffffffffffff19161415610e0757600191505b5092915050565b600060089054906101000a900478010000000000000000000000000000000000000000000000000281565b8060011515600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515610e9957600080fd5b7fe658c5996592e4e625c4b704f41038e4928d74269d7c9ccb26acd7d22c3ebd8a600102600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663635912d5600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166382f6f815336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015610fb857600080fd5b505af1158015610fcc573d6000803e3d6000fd5b505050506040513d6020811015610fe257600080fd5b8101908080519060200190929190505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166305ad1456856040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b15801561108c57600080fd5b505af11580156110a0573d6000803e3d6000fd5b505050506040513d60208110156110b657600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200192505050602060405180830381600087803b15801561118c57600080fd5b505af11580156111a0573d6000803e3d6000fd5b505050506040513d60208110156111b657600080fd5b810190808051906020019092919050505015156111d257600080fd5b6000600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050505600a165627a7a723058207cd380b259d4361afd9df233e76dd98478297df91251b6fc9377739f55bc537b0029",
"deployedBytecode": "0x6080604052600436106100ba576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680632864faea146100bf57806335bc07a6146101165780634a9f480e146101bd5780637381ea03146102005780638401ccc8146102615780638bac4396146103005780639abcff041461035b578063aa5ce959146103b6578063c34b59eb146103f9578063c6ca6da714610450578063cb2ef6f7146104d0578063d23a65c514610531575b600080fd5b3480156100cb57600080fd5b506100d4610574565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561012257600080fd5b50610157600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061059a565b6040518084600019166000191681526020018377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200182151515158152602001935050505060405180910390f35b3480156101c957600080fd5b506101fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506105f6565b005b34801561020c57600080fd5b506102156106b3565b604051808277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b34801561026d57600080fd5b506102fe600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035600019169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190803560ff169060200190929190803560001916906020019092919080356000191690602001909291905050506106dd565b005b34801561030c57600080fd5b50610341600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506108bd565b604051808215151515815260200191505060405180910390f35b34801561036757600080fd5b5061039c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610916565b604051808215151515815260200191505060405180910390f35b3480156103c257600080fd5b506103f7600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610936565b005b34801561040557600080fd5b5061040e610d2c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561045c57600080fd5b506104b6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803577ffffffffffffffffffffffffffffffffffffffffffffffff19169060200190929190505050610d52565b604051808215151515815260200191505060405180910390f35b3480156104dc57600080fd5b506104e5610e0e565b604051808277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200191505060405180910390f35b34801561053d57600080fd5b50610572600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e39565b005b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60056020528060005260406000206000915090508060000154908060010160009054906101000a9004780100000000000000000000000000000000000000000000000002908060010160089054906101000a900460ff16905083565b60011515600660003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514151561065557600080fd5b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160086101000a81548160ff02191690831515021790555050565b6000809054906101000a900478010000000000000000000000000000000000000000000000000281565b848383836001151560066000600187878787604051600081526020016040526040518085600019166000191681526020018460ff1660ff1681526020018360001916600019168152602001826000191660001916815260200194505050505060206040516020810390808403906000865af1158015610760573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415156107c057600080fd5b6060604051908101604052808a6000191681526020018977ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200160011515815250600560008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000019060001916905560208201518160010160006101000a81548167ffffffffffffffff021916908378010000000000000000000000000000000000000000000000009004021790555060408201518160010160086101000a81548160ff02191690831515021790555090505050505050505050505050565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160089054906101000a900460ff169050919050565b60066020528060005260406000206000915054906101000a900460ff1681565b8060001515600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151514151561099657600080fd5b7f5543afb94ba7d5922e5114d78936a65c38979551726094230a3bbb2d4c808fe8600102600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663635912d5600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166382f6f815336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015610ab557600080fd5b505af1158015610ac9573d6000803e3d6000fd5b505050506040513d6020811015610adf57600080fd5b8101908080519060200190929190505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166305ad1456856040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b158015610b8957600080fd5b505af1158015610b9d573d6000803e3d6000fd5b505050506040513d6020811015610bb357600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200192505050602060405180830381600087803b158015610c8957600080fd5b505af1158015610c9d573d6000803e3d6000fd5b505050506040513d6020811015610cb357600080fd5b81019080805190602001909291905050501515610ccf57600080fd5b6001600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900478010000000000000000000000000000000000000000000000000290506000780100000000000000000000000000000000000000000000000002838483161877ffffffffffffffffffffffffffffffffffffffffffffffff19161415610e0757600191505b5092915050565b600060089054906101000a900478010000000000000000000000000000000000000000000000000281565b8060011515600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515610e9957600080fd5b7fe658c5996592e4e625c4b704f41038e4928d74269d7c9ccb26acd7d22c3ebd8a600102600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663635912d5600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166382f6f815336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015610fb857600080fd5b505af1158015610fcc573d6000803e3d6000fd5b505050506040513d6020811015610fe257600080fd5b8101908080519060200190929190505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166305ad1456856040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b15801561108c57600080fd5b505af11580156110a0573d6000803e3d6000fd5b505050506040513d60208110156110b657600080fd5b81019080805190602001909291905050506040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808377ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff191681526020018277ffffffffffffffffffffffffffffffffffffffffffffffff191677ffffffffffffffffffffffffffffffffffffffffffffffff1916815260200192505050602060405180830381600087803b15801561118c57600080fd5b505af11580156111a0573d6000803e3d6000fd5b505050506040513d60208110156111b657600080fd5b810190808051906020019092919050505015156111d257600080fd5b6000600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050505600a165627a7a723058207cd380b259d4361afd9df233e76dd98478297df91251b6fc9377739f55bc537b0029",
"sourceMap": "54:1434:10:-;;;93:146;8:9:-1;5:2;;;30:1;27;20:12;5:2;93:146:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;170:62;176:8;185;194:18;170:62;;213:18;170:62;;:5;;;:62;;;:::i;:::-;93:146;;54:1434;;891:341:13;1030:8;1020:7;;:18;;;;;;;;;;;;;;;;;;1058:8;1048:7;;:18;;;;;;;;;;;;;;;;;;1095:8;1076:4;;:28;;;;;;;;;;;;;;;;;;1132:8;1114:4;;:27;;;;;;;;;;;;;;;;;;1170:17;1151:16;;:36;;;;;;;;;;;;;;;;;;;1212:13;1197:12;;:28;;;;;;;;;;;;;;;;;;;891:341;;;;:::o;54:1434:10:-;;;;;;;",
"deployedSourceMap": "54:1434:10:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;424:22:13;;8:9:-1;5:2;;;30:1;27;20:12;5:2;424:22:13;;;;;;;;;;;;;;;;;;;;;;;;;;;101:45:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;101:45:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;999:122:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;999:122:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;355:30:13;;8:9:-1;5:2;;;30:1;27;20:12;5:2;355:30:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;754:239:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;754:239:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1371:114;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1371:114:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;252:46:11;;8:9:-1;5:2;;;30:1;27;20:12;5:2;252:46:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;245:248:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;245:248:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;452:22:13;;8:9:-1;5:2;;;30:1;27;20:12;5:2;452:22:13;;;;;;;;;;;;;;;;;;;;;;;;;;;1127:238:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1127:238:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;391:26:13;;8:9:-1;5:2;;;30:1;27;20:12;5:2;391:26:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;499:249:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;499:249:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;424:22:13;;;;;;;;;;;;;:::o;101:45:11:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;999:122:10:-;550:4:11;523:31;;:11;:23;535:10;523:23;;;;;;;;;;;;;;;;;;;;;;;;;:31;;;514:42;;;;;;;;1109:5:10;1088;:12;1094:5;1088:12;;;;;;;;;;;;;;;:18;;;:26;;;;;;;;;;;;;;;;;;999:122;:::o;355:30:13:-;;;;;;;;;;;;;:::o;754:239:10:-;887:8;896:2;899;902;447:4:11;398:53;;:11;:45;410:32;421:4;428:2;433;438;410:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;410:32:11;;;;;;;;398:45;;;;;;;;;;;;;;;;;;;;;;;;;:53;;;389:64;;;;;;;;950:36:10;;;;;;;;;961:8;950:36;;;;;;;971:7;950:36;;;;;;;981:4;950:36;;;;;935:5;:12;941:5;935:12;;;;;;;;;;;;;;;:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;754:239;;;;;;;;;;:::o;1371:114::-;1430:11;1460:5;:12;1466:5;1460:12;;;;;;;;;;;;;;;:18;;;;;;;;;;;;1453:25;;1371:114;;;:::o;252:46:11:-;;;;;;;;;;;;;;;;;;;;;;:::o;245:248:10:-;327:9;669:5:11;647:27;;:11;:18;659:5;647:18;;;;;;;;;;;;;;;;;;;;;;;;;:27;;;638:38;;;;;;;;360:66:10;525:142:13;;583:4;;;;;;;;;;;:20;;;604:4;;;;;;;;;;;:12;;;617:10;604:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;604:24:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;604:24:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;604:24:13;;;;;;;;;;;;;;;;629:4;;;;;;;;;;;:11;;;641:5;629:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;629:18:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;629:18:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;629:18:13;;;;;;;;;;;;;;;;583:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;583:65:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;583:65:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;583:65:13;;;;;;;;;;;;;;;;575:74;;;;;;;;482:4:10;457:11;:22;469:9;457:22;;;;;;;;;;;;;;;;:29;;;;;;;;;;;;;;;;;;686:1:11;245:248:10;;:::o;452:22:13:-;;;;;;;;;;;;;:::o;1127:238:10:-;1204:11;1227:16;1246:5;:12;1252:5;1246:12;;;;;;;;;;;;;;;:20;;;;;;;;;;;;1227:39;;1318:1;1281:38;;1307:5;1297;1285:9;:17;1283:29;1281:38;;;;1276:83;;;1344:4;1335:13;;1276:83;1127:238;;;;;:::o;391:26:13:-;;;;;;;;;;;;;:::o;499:249:10:-;581:9;788:4:11;766:26;;:11;:18;778:5;766:18;;;;;;;;;;;;;;;;;;;;;;;;;:26;;;757:37;;;;;;;;614:66:10;525:142:13;;583:4;;;;;;;;;;;:20;;;604:4;;;;;;;;;;;:12;;;617:10;604:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;604:24:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;604:24:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;604:24:13;;;;;;;;;;;;;;;;629:4;;;;;;;;;;;:11;;;641:5;629:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;629:18:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;629:18:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;629:18:13;;;;;;;;;;;;;;;;583:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;583:65:13;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;583:65:13;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;583:65:13;;;;;;;;;;;;;;;;575:74;;;;;;;;736:5:10;711:11;:22;723:9;711:22;;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;804:1:11;499:249:10;;:::o",
"source": "pragma solidity 0.4.25;\n\nimport \"./kycRegis_ds.sol\";\n\ncontract kycRegis is kycRegis_ds{\n\n constructor ( address _maCAddr , address _ruCAddr )\n public\n {\n setup(_maCAddr,_ruCAddr,0x0000000000000002,0x0000000000000001);\n }\n\n function enableServiceProvider( address _provider )\n isKYCProviderDisabled(_provider)\n mod_checkPerm(0x5543afb94ba7d5922e5114d78936a65c38979551726094230a3bbb2d4c808fe8)\n public\n {\n kycProvider[_provider] = true;\n }\n\n function disableServiceProvider( address _provider )\n isKYCProviderEnabled(_provider)\n mod_checkPerm(0xe658c5996592e4e625c4b704f41038e4928d74269d7c9ccb26acd7d22c3ebd8a)\n public\n {\n kycProvider[_provider] = false;\n }\n\n function setKYCdetails( address _addr , bytes32 _kycHash , bytes8 _kycMap , uint8 _v, bytes32 _r, bytes32 _s )\n isKYCProvider(_kycHash,_v,_r,_s)\n public\n {\n kycDS[_addr] = kycStruct( _kycHash, _kycMap , true);\n }\n\n function disableKYC( address _addr )\n isKYCProviderD\n public\n {\n kycDS[_addr].state = false;\n }\n\n function isValidKYCMap( address _addr , bytes8 _perm ) view public returns ( bool result ){\n bytes8 localPerm = kycDS[_addr].permMap;\n if ( ( ( localPerm & _perm ) ^ _perm ) == 0) {\n result = true;\n }\n }\n\n function isValidKYC( address _addr ) view public returns ( bool result ){\n return kycDS[_addr].state;\n }\n\n}\n",
"sourcePath": "/contracts/kyc/kycRegis.sol",
"ast": {
"absolutePath": "/contracts/kyc/kycRegis.sol",
"exportedSymbols": {
"kycRegis": [
1681
]
},
"id": 1682,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1534,
"literals": [
"solidity",
"0.4",
".25"
],
"nodeType": "PragmaDirective",
"src": "0:23:10"
},
{
"absolutePath": "/contracts/kyc/kycRegis_ds.sol",
"file": "./kycRegis_ds.sol",
"id": 1535,
"nodeType": "ImportDirective",
"scope": 1682,
"sourceUnit": 1769,
"src": "25:27:10",
"symbolAliases": [],
"unitAlias": ""
},
{
"baseContracts": [
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 1536,
"name": "kycRegis_ds",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1768,
"src": "75:11:10",
"typeDescriptions": {
"typeIdentifier": "t_contract$_kycRegis_ds_$1768",
"typeString": "contract kycRegis_ds"
}
},
"id": 1537,
"nodeType": "InheritanceSpecifier",
"src": "75:11:10"
}
],
"contractDependencies": [
1768,
2008
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 1681,
"linearizedBaseContracts": [
1681,
1768,
2008
],
"name": "kycRegis",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": {
"id": 1551,
"nodeType": "Block",
"src": "160:79:10",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 1545,
"name": "_maCAddr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1539,
"src": "176:8:10",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 1546,
"name": "_ruCAddr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1541,
"src": "185:8:10",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"hexValue": "307830303030303030303030303030303032",
"id": 1547,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "194:18:10",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_2_by_1",
"typeString": "int_const 2"
},
"value": "0x0000000000000002"
},
{
"argumentTypes": null,
"hexValue": "307830303030303030303030303030303031",
"id": 1548,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "213:18:10",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "0x0000000000000001"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_address",
"typeString": "address"
},
{
"typeIdentifier": "t_rational_2_by_1",
"typeString": "int_const 2"
},
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"id": 1544,
"name": "setup",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2007,
"src": "170:5:10",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_address_$_t_bytes8_$_t_bytes8_$returns$__$",
"typeString": "function (address,address,bytes8,bytes8)"
}
},
"id": 1549,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "170:62:10",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1550,
"nodeType": "ExpressionStatement",
"src": "170:62:10"
}
]
},
"documentation": null,
"id": 1552,
"implemented": true,
"isConstructor": true,
"isDeclaredConst": false,
"modifiers": [],
"name": "",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1542,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1539,
"name": "_maCAddr",
"nodeType": "VariableDeclaration",
"scope": 1552,
"src": "107:16:10",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1538,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "107:7:10",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1541,
"name": "_ruCAddr",
"nodeType": "VariableDeclaration",
"scope": 1552,
"src": "126:16:10",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1540,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "126:7:10",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "105:39:10"
},
"payable": false,
"returnParameters": {
"id": 1543,
"nodeType": "ParameterList",
"parameters": [],
"src": "160:0:10"
},
"scope": 1681,
"src": "93:146:10",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 1569,
"nodeType": "Block",
"src": "447:46:10",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 1567,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 1563,
"name": "kycProvider",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1701,
"src": "457:11:10",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
"typeString": "mapping(address => bool)"
}
},
"id": 1565,
"indexExpression": {
"argumentTypes": null,
"id": 1564,
"name": "_provider",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1554,
"src": "469:9:10",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "457:22:10",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 1566,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "482:4:10",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"src": "457:29:10",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 1568,
"nodeType": "ExpressionStatement",
"src": "457:29:10"
}
]
},
"documentation": null,
"id": 1570,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [
{
"argumentTypes": null,
"id": 1557,
"name": "_provider",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1554,
"src": "327:9:10",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"id": 1558,
"modifierName": {
"argumentTypes": null,
"id": 1556,
"name": "isKYCProviderDisabled",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1753,
"src": "305:21:10",
"typeDescriptions": {
"typeIdentifier": "t_modifier$_t_address_$",
"typeString": "modifier (address)"
}
},
"nodeType": "ModifierInvocation",
"src": "305:32:10"
},
{
"arguments": [
{
"argumentTypes": null,
"hexValue": "307835353433616662393462613764353932326535313134643738393336613635633338393739353531373236303934323330613362626232643463383038666538",
"id": 1560,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "360:66:10",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_38566183684086081419151710305024789410978824938484306706348271358877991210984_by_1",
"typeString": "int_const 3856...(69 digits omitted)...0984"
},
"value": "0x5543afb94ba7d5922e5114d78936a65c38979551726094230a3bbb2d4c808fe8"
}
],
"id": 1561,
"modifierName": {
"argumentTypes": null,
"id": 1559,
"name": "mod_checkPerm",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1942,
"src": "346:13:10",
"typeDescriptions": {
"typeIdentifier": "t_modifier$_t_bytes32_$",
"typeString": "modifier (bytes32)"
}
},
"nodeType": "ModifierInvocation",
"src": "346:81:10"
}
],
"name": "enableServiceProvider",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1555,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1554,
"name": "_provider",
"nodeType": "VariableDeclaration",
"scope": 1570,
"src": "277:17:10",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1553,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "277:7:10",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "275:21:10"
},
"payable": false,
"returnParameters": {
"id": 1562,
"nodeType": "ParameterList",
"parameters": [],
"src": "447:0:10"
},
"scope": 1681,
"src": "245:248:10",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
},
{
"body": {
"id": 1587,
"nodeType": "Block",
"src": "701:47:10",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 1585,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 1581,
"name": "kycProvider",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1701,
"src": "711:11:10",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_bool_$",
"typeString": "mapping(address => bool)"
}
},
"id": 1583,