UNPKG

@tokenz/tokens-smartcontract-sdk

Version:
759 lines (758 loc) 176 kB
{ "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,