From 340f41aef8086cda060f89e25489cb92aa4f1dda Mon Sep 17 00:00:00 2001 From: Aman Date: Fri, 26 Nov 2021 13:23:04 +0530 Subject: [PATCH] Frontend contract update and refresh rate change --- src/contract/Identity.json | 21124 ++++++++++++++++------------------- src/helper.js | 4 +- 2 files changed, 9469 insertions(+), 11659 deletions(-) diff --git a/src/contract/Identity.json b/src/contract/Identity.json index 2a36606..04ce867 100644 --- a/src/contract/Identity.json +++ b/src/contract/Identity.json @@ -271,41 +271,6 @@ "stateMutability": "nonpayable", "type": "function" }, - { - "constant": false, - "inputs": [ - { - "internalType": "string", - "name": "_Hash", - "type": "string" - }, - { - "internalType": "address", - "name": "_Issuer", - "type": "address" - }, - { - "internalType": "string", - "name": "_Sign", - "type": "string" - }, - { - "internalType": "uint256", - "name": "_IdNum", - "type": "uint256" - }, - { - "internalType": "string", - "name": "_IssuerHash", - "type": "string" - } - ], - "name": "modifyId", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, { "constant": false, "inputs": [ @@ -356,6 +321,21 @@ "stateMutability": "nonpayable", "type": "function" }, + { + "constant": true, + "inputs": [], + "name": "totalId", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, { "constant": true, "inputs": [ @@ -414,6 +394,36 @@ "stateMutability": "view", "type": "function" }, + { + "constant": true, + "inputs": [], + "name": "totalIssuer", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalRequest", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, { "constant": true, "inputs": [ @@ -451,23 +461,38 @@ "payable": false, "stateMutability": "view", "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "issuerVerificationRequestCount", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.5.16+commit.9c3226ce\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_ReqNo\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"_Sign\",\"type\":\"string\"}],\"name\":\"AcceptIdRequest\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"Issuer\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"IssuerAddress\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"Desc\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"Status\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"IssueId\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"ReqCount\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"IssuerDetail\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"IssuerAddress\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"Desc\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"Status\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"IssueId\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"ReqCount\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"IssuerVerificationRequest\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"Owner\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"Status\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"Id\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"Desc\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"Owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_ReqNo\",\"type\":\"uint256\"}],\"name\":\"RejectIdRequest\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"UserDetail\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"UserAddress\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"PublicKey\",\"type\":\"string\"},{\"internalType\":\"bool\",\"name\":\"Registered\",\"type\":\"bool\"},{\"internalType\":\"uint256\",\"name\":\"IdCount\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_IdNum\",\"type\":\"uint256\"}],\"name\":\"deleteId\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_IdNo\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"getId\",\"outputs\":[{\"components\":[{\"internalType\":\"string\",\"name\":\"Name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"Hash\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"Owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"Issuer\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"OwnerSignature\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"IssuerSignature\",\"type\":\"string\"}],\"internalType\":\"struct Identity.identity\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_RqNo\",\"type\":\"uint256\"}],\"name\":\"getRequest\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"Owner\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"Hash\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"Status\",\"type\":\"uint256\"}],\"internalType\":\"struct Identity.verifyIdRequest\",\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"string\",\"name\":\"_Hash\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"_Issuer\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_Sign\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"_IdNum\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"_IssuerHash\",\"type\":\"string\"}],\"name\":\"modifyId\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"string\",\"name\":\"_Hash\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"_Issuer\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"_Sign\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_IssuerHash\",\"type\":\"string\"}],\"name\":\"newId\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"string\",\"name\":\"_PublicKey\",\"type\":\"string\"}],\"name\":\"registerUser\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_RqNo\",\"type\":\"uint256\"}],\"name\":\"rejectIssuerAccount\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"string\",\"name\":\"_Desc\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"_IssueId\",\"type\":\"string\"}],\"name\":\"requestIssuerAccount\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_RqNo\",\"type\":\"uint256\"}],\"name\":\"verifyIssuerAccount\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{\"constructor\":\"*************Constructor**************\",\"registerUser(string)\":{\"notice\":\"*************Functions**************\"}}}},\"settings\":{\"compilationTarget\":{\"/C/Users/Aman Gupta/Desktop/Cstuff/5th Sem/project/ethereum-backend/contracts/identity.sol\":\"Identity\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/C/Users/Aman Gupta/Desktop/Cstuff/5th Sem/project/ethereum-backend/contracts/identity.sol\":{\"keccak256\":\"0xd831d740034aca9c961a73a9b26ac354f7e27070d182555fd9c060d24dab0445\",\"urls\":[\"bzz-raw://a53d8b625cda36944e623bceaab45cbaa94ef4488596fc7983bd2bc01c16adec\",\"dweb:/ipfs/QmcrN4GLWDmq6wLq37NwSpvSkRC3L1aBfBRaUudpXrmzdS\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b50600080546001600160a01b03191633179055612b6f806100326000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80638196e22e11610097578063c58343ef11610066578063c58343ef14610227578063e54cdc6d14610247578063f554f4e41461025a578063f772c6961461027a57610100565b80638196e22e146101d957806388a52e7e146101ec57806388f949b3146101ff578063b4a99a4e1461021257610100565b80634ab52d81116100d35780634ab52d811461016d5780635c6d20ff1461019057806369b09984146101a3578063704f1b94146101c657610100565b8063114838e4146101055780632b3cb2741461011a5780633700bd5714610147578063411870b71461015a575b600080fd5b61011861011336600461212d565b61028d565b005b61012d6101283660046120d2565b610552565b60405161013e9594939291906128b3565b60405180910390f35b6101186101553660046122fa565b6106a4565b610118610168366004612291565b6108cf565b61018061017b3660046122fa565b610ad6565b60405161013e949392919061290d565b61011861019e3660046121d5565b610c2e565b6101b66101b13660046120d2565b610f11565b60405161013e9493929190612877565b6101186101d43660046120f8565b610fd5565b6101186101e73660046122fa565b611094565b6101186101fa3660046122fa565b611342565b61011861020d3660046122fa565b61147a565b61021a611671565b60405161013e9190612869565b61023a6102353660046122fa565b611680565b60405161013e9190612a2f565b61012d6102553660046122fa565b6117cb565b61026d610268366004612318565b61185a565b60405161013e9190612a1e565b610118610288366004612348565b611b52565b3360008181526003602052604090206002015460ff1615156001146102cd5760405162461bcd60e51b81526004016102c49061295e565b60405180910390fd5b6001600160a01b038416600090815260046020526040902060029081015485911461030a5760405162461bcd60e51b81526004016102c49061299e565b610312611e03565b6001600160a01b03861660009081526004602090815260409182902060030180548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845290918301828280156103b25780601f10610387576101008083540402835291602001916103b2565b820191906000526020600020905b81548152906001019060200180831161039557829003601f168201915b505050918352505060208082018890523360408084018290526001600160a01b03891660608501526080840188905280518082018252600781526650656e64696e6760c81b8185015260a085015260009182526003808452818320908101805460018101909155835260040183529020825180518493610436928492910190611e4b565b50602082810151805161044f9260018501920190611e4b565b5060408201516002820180546001600160a01b039283166001600160a01b0319918216179091556060840151600384018054919093169116179055608082015180516104a5916004840191602090910190611e4b565b5060a082015180516104c1916005840191602090910190611e4b565b509050506104cd611ec9565b3381526020808201868152600160408085018290526001600160a01b038b81166000908152600480875283822090810180548087019091558252600501865291909120855181546001600160a01b031916921691909117815591518051859461053a938501920190611e4b565b50604082015181600201559050505050505050505050565b6004602090815260009182526040918290208054600180830180548651600261010094831615949094026000190190911692909204601f81018690048602830186019096528582526001600160a01b039092169492939092908301828280156105fc5780601f106105d1576101008083540402835291602001916105fc565b820191906000526020600020905b8154815290600101906020018083116105df57829003601f168201915b505050506002838101546003850180546040805160206001841615610100026000190190931695909504601f8101839004830286018301909152808552959692959294509091908301828280156106945780601f1061066957610100808354040283529160200191610694565b820191906000526020600020905b81548152906001019060200180831161067757829003601f168201915b5050505050908060040154905085565b3360008181526003602052604090206002015460ff1615156001146106db5760405162461bcd60e51b81526004016102c49061295e565b3360009081526003602081905260409091200154821061070d5760405162461bcd60e51b81526004016102c4906129be565b815b33600090815260036020819052604090912001546000190181101561083357336000908152600360209081526040808320600185810185526004909101909252808320848452922082549091610778918391859160029181161561010002600019011604611ef3565b50600182018160010190805460018160011615610100020316600290046107a0929190611ef3565b5060028281015482820180546001600160a01b039283166001600160a01b03199182161790915560038086015490850180549190931691161790556004808401805461080093928501926101006001831615026000190190911604611ef3565b5060058201816005019080546001816001161561010002031660029004610828929190611ef3565b50505060010161070f565b5033600090815260036020818152604080842092830154600019018452600490920190528120906108648282611f68565b610872600183016000611f68565b6002820180546001600160a01b031990811690915560038301805490911690556108a0600483016000611f68565b6108ae600583016000611f68565b50503360009081526003602081905260409091200180546000190190555050565b3360008181526003602052604090206002015460ff1615156001146109065760405162461bcd60e51b81526004016102c49061295e565b33600090815260046020526040902060020154156109365760405162461bcd60e51b81526004016102c4906129de565b61093e611faf565b33808252600160408084018290526020808501888152606086018890526000608087018190529485526004825291909320845181546001600160a01b0319166001600160a01b0390911617815590518051859492936109a293908501920190611e4b565b5060408201516002820155606082015180516109c8916003840191602090910190611e4b565b50608082015181600401559050506109de611fe7565b3381526001602080830182815260408401878152606085018990526002805494850180825560009190915285517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace600490960295860180546001600160a01b0319166001600160a01b0390921691909117815592517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf8601559051805191948694610aaf937f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ad0909201920190611e4b565b5060608201518051610acb916003840191602090910190611e4b565b505050505050505050565b60028181548110610ae357fe5b6000918252602091829020600491909102018054600180830154600280850180546040805161010096831615969096026000190190911692909204601f81018890048802850188019092528184526001600160a01b0390941696509094919291830182828015610b945780601f10610b6957610100808354040283529160200191610b94565b820191906000526020600020905b815481529060010190602001808311610b7757829003601f168201915b5050505060038301805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152949594935090830182828015610c245780601f10610bf957610100808354040283529160200191610c24565b820191906000526020600020905b815481529060010190602001808311610c0757829003601f168201915b5050505050905084565b3360008181526003602052604090206002015460ff161515600114610c655760405162461bcd60e51b81526004016102c49061295e565b6001600160a01b0385166000908152600460205260409020600290810154869114610ca25760405162461bcd60e51b81526004016102c49061299e565b33600090815260036020819052604090912001548410610cd45760405162461bcd60e51b81526004016102c4906129be565b610cdc611e03565b6001600160a01b03871660009081526004602090815260409182902060030180548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529091830182828015610d7c5780601f10610d5157610100808354040283529160200191610d7c565b820191906000526020600020905b815481529060010190602001808311610d5f57829003601f168201915b505050918352505060208082018990523360408084018290526001600160a01b038a1660608501526080840189905280518082018252600781526650656e64696e6760c81b8185015260a085015260009182526003835280822088835260040183529020825180518493610df4928492910190611e4b565b506020828101518051610e0d9260018501920190611e4b565b5060408201516002820180546001600160a01b039283166001600160a01b031991821617909155606084015160038401805491909316911617905560808201518051610e63916004840191602090910190611e4b565b5060a08201518051610e7f916005840191602090910190611e4b565b50905050610e8b611ec9565b3381526020808201868152600160408085018290526001600160a01b038c81166000908152600480875283822090810180548087019091558252600501865291909120855181546001600160a01b0319169216919091178155915180518594610ef8938501920190611e4b565b5060408201518160020155905050505050505050505050565b6003602090815260009182526040918290208054600180830180548651600261010094831615949094026000190190911692909204601f81018690048602830186019096528582526001600160a01b03909216949293909290830182828015610fbb5780601f10610f9057610100808354040283529160200191610fbb565b820191906000526020600020905b815481529060010190602001808311610f9e57829003601f168201915b505050506002830154600390930154919260ff1691905084565b3360009081526003602052604090206002015460ff16156110085760405162461bcd60e51b81526004016102c49061296e565b611010612018565b338082526000606083018190526020808401858152600160408087018290529484526003835293909220845181546001600160a01b0319166001600160a01b0390911617815591518051859461106b93908501920190611e4b565b50604082015160028201805460ff19169115159190911790556060909101516003909101555050565b3360008181526003602052604090206002015460ff1615156001146110cb5760405162461bcd60e51b81526004016102c49061295e565b336000818152600460205260409020600290810154146110fd5760405162461bcd60e51b81526004016102c49061299e565b3360009081526004602081905260409091200154831061112f5760405162461bcd60e51b81526004016102c49061298e565b33600090815260046020908152604080832086845260050190915290206002015460011461116f5760405162461bcd60e51b81526004016102c4906129ce565b336000908152600460209081526040808320868452600501909152812060028101829055546001600160a01b0316815b6001600160a01b0382166000908152600360208190526040909120015481101561131857336000908152600460205260409081902090516111e39160030190612856565b604080519182900382206001600160a01b038516600090815260036020908152838220868352600401905291909120909161121e9190612856565b60405180910390201480156112ab5750604080518082018252600781526650656e64696e6760c81b6020918201526001600160a01b03841660009081526003825282812084825260040190915281902090517f4be840e351422c3b302abb79aa7db05560ead7e387e413320822a342fca3f54e916112a191600590910190612856565b6040518091039020145b1561131057604080518082018252600881526714995a9958dd195960c21b60208083019182526001600160a01b0386166000908152600382528481208682526004019091529290922090516113069260059092019190611e4b565b5060019250611318565b60010161119f565b5060018215151461133b5760405162461bcd60e51b81526004016102c49061294e565b5050505050565b6000546001600160a01b0316331461136c5760405162461bcd60e51b81526004016102c4906129ae565b600254811061138d5760405162461bcd60e51b81526004016102c49061298e565b60006002828154811061139c57fe5b6000918252602090912060049091020154600280546001600160a01b03909216925090839081106113c957fe5b9060005260206000209060040201600101546001146113fa5760405162461bcd60e51b81526004016102c49061297e565b6001600160a01b0381166000908152600460205260409020600201546001146114355760405162461bcd60e51b81526004016102c4906129ee565b6001600160a01b0381166000908152600460205260408120600290810182905580548490811061146157fe5b9060005260206000209060040201600101819055505050565b6000546001600160a01b031633146114a45760405162461bcd60e51b81526004016102c4906129ae565b60025481106114c55760405162461bcd60e51b81526004016102c49061298e565b6000600282815481106114d457fe5b6000918252602090912060049091020154600280546001600160a01b039092169250908390811061150157fe5b9060005260206000209060040201600101546001146115325760405162461bcd60e51b81526004016102c49061297e565b6001600160a01b03811660009081526004602052604090206002015460011461156d5760405162461bcd60e51b81526004016102c4906129ee565b6001600160a01b03808216600090815260046020526040812060028181018190556001805480820180835594829052835460069091027fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6810180546001600160a01b03191692909716919091178655818401805495969495611623947fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf79093019391929181161561010002600019011604611ef3565b506002820154816002015560038201816003019080546001816001161561010002031660029004611655929190611ef3565b5060048201548160040155505050600280838154811061146157fe5b6000546001600160a01b031681565b611688611ec9565b336000818152600460205260409020600290810154146116ba5760405162461bcd60e51b81526004016102c49061299e565b336000908152600460208190526040909120015483106116ec5760405162461bcd60e51b81526004016102c4906129fe565b336000908152600460209081526040808320868452600501825291829020825160608101845281546001600160a01b03168152600180830180548651600261010094831615949094026000190190911692909204601f81018690048602830186019096528582529194929385810193919291908301828280156117b05780601f10611785576101008083540402835291602001916117b0565b820191906000526020600020905b81548152906001019060200180831161179357829003601f168201915b50505050508152602001600282015481525050915050919050565b600181815481106117d857fe5b600091825260209182902060069091020180546001808301805460408051601f60026000199685161561010002969096019093169490940491820187900487028401870190528083526001600160a01b0390931695509293909291908301828280156105fc5780601f106105d1576101008083540402835291602001916105fc565b611862611e03565b6001600160a01b03821660009081526003602081905260409091200154831061189d5760405162461bcd60e51b81526004016102c490612a0e565b6001600160a01b03821660009081526003602090815260408083208684526004018252918290208251815460026001821615610100026000190190911604601f8101849004909302810160e090810190945260c081018381529093919284928491908401828280156119505780601f1061192557610100808354040283529160200191611950565b820191906000526020600020905b81548152906001019060200180831161193357829003601f168201915b50505050508152602001600182018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119f25780601f106119c7576101008083540402835291602001916119f2565b820191906000526020600020905b8154815290600101906020018083116119d557829003601f168201915b50505091835250506002828101546001600160a01b03908116602080850191909152600385015490911660408085019190915260048501805482516101006001831615026000190190911694909404601f810184900484028501840190925281845260609094019391830182828015611aac5780601f10611a8157610100808354040283529160200191611aac565b820191906000526020600020905b815481529060010190602001808311611a8f57829003601f168201915b505050918352505060058201805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152938201939291830182828015611b405780601f10611b1557610100808354040283529160200191611b40565b820191906000526020600020905b815481529060010190602001808311611b2357829003601f168201915b50505050508152505090505b92915050565b3360008181526003602052604090206002015460ff161515600114611b895760405162461bcd60e51b81526004016102c49061295e565b33600081815260046020526040902060029081015414611bbb5760405162461bcd60e51b81526004016102c49061299e565b33600090815260046020819052604090912001548410611bed5760405162461bcd60e51b81526004016102c49061298e565b336000908152600460209081526040808320878452600501909152902060020154600114611c2d5760405162461bcd60e51b81526004016102c4906129ce565b3360009081526004602090815260408083208784526005019091528120546001600160a01b0316815b6001600160a01b03821660009081526003602081905260409091200154811015611db35733600090815260046020526040908190209051611c9a9160030190612856565b604080519182900382206001600160a01b0385166000908152600360209081528382208683526004019052919091209091611cd59190612856565b6040518091039020148015611d625750604080518082018252600781526650656e64696e6760c81b6020918201526001600160a01b03841660009081526003825282812084825260040190915281902090517f4be840e351422c3b302abb79aa7db05560ead7e387e413320822a342fca3f54e91611d5891600590910190612856565b6040518091039020145b15611dab576001600160a01b038216600090815260036020908152604080832084845260040182529091208751611da192600590920191890190611e4b565b5060019250611db3565b600101611c56565b50600182151514611dd65760405162461bcd60e51b81526004016102c49061294e565b50503360009081526004602090815260408083209683526005909601905293909320600290810155505050565b6040518060c00160405280606081526020016060815260200160006001600160a01b0316815260200160006001600160a01b0316815260200160608152602001606081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611e8c57805160ff1916838001178555611eb9565b82800160010185558215611eb9579182015b82811115611eb9578251825591602001919060010190611e9e565b50611ec592915061204b565b5090565b604051806060016040528060006001600160a01b0316815260200160608152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611f2c5780548555611eb9565b82800160010185558215611eb957600052602060002091601f016020900482015b82811115611eb9578254825591600101919060010190611f4d565b50805460018160011615610100020316600290046000825580601f10611f8e5750611fac565b601f016020900490600052602060002090810190611fac919061204b565b50565b6040518060a0016040528060006001600160a01b03168152602001606081526020016000815260200160608152602001600081525090565b604051806080016040528060006001600160a01b031681526020016000815260200160608152602001606081525090565b604051806080016040528060006001600160a01b0316815260200160608152602001600015158152602001600081525090565b61206591905b80821115611ec55760008155600101612051565b90565b8035611b4c81612b0f565b600082601f83011261208457600080fd5b813561209761209282612a67565b612a40565b915080825260208301602083018583830111156120b357600080fd5b6120be838284612ac9565b50505092915050565b8035611b4c81612b23565b6000602082840312156120e457600080fd5b60006120f08484612068565b949350505050565b60006020828403121561210a57600080fd5b813567ffffffffffffffff81111561212157600080fd5b6120f084828501612073565b6000806000806080858703121561214357600080fd5b843567ffffffffffffffff81111561215a57600080fd5b61216687828801612073565b945050602061217787828801612068565b935050604085013567ffffffffffffffff81111561219457600080fd5b6121a087828801612073565b925050606085013567ffffffffffffffff8111156121bd57600080fd5b6121c987828801612073565b91505092959194509250565b600080600080600060a086880312156121ed57600080fd5b853567ffffffffffffffff81111561220457600080fd5b61221088828901612073565b955050602061222188828901612068565b945050604086013567ffffffffffffffff81111561223e57600080fd5b61224a88828901612073565b935050606061225b888289016120c7565b925050608086013567ffffffffffffffff81111561227857600080fd5b61228488828901612073565b9150509295509295909350565b600080604083850312156122a457600080fd5b823567ffffffffffffffff8111156122bb57600080fd5b6122c785828601612073565b925050602083013567ffffffffffffffff8111156122e457600080fd5b6122f085828601612073565b9150509250929050565b60006020828403121561230c57600080fd5b60006120f084846120c7565b6000806040838503121561232b57600080fd5b600061233785856120c7565b92505060206122f085828601612068565b6000806040838503121561235b57600080fd5b60006122c785856120c7565b61237081612aad565b82525050565b61237081612ab8565b60008154600181166000811461239c57600181146123bf576123fe565b607f60028304166123ad8187612a9f565b60ff19841681529550850192506123fe565b600282046123cd8187612a9f565b95506123d885612a8f565b60005b828110156123f7578154888201526001909101906020016123db565b5050850192505b505092915050565b600061241182612a9b565b61241b8185612aa4565b935061242b818560208601612ad5565b61243481612b05565b9093019392505050565b600061244b601783612aa4565b7f55736572204964656e74697479204e6f7420466f756e64000000000000000000815260200192915050565b6000612484601e83612aa4565b7f54686973204163636f756e74206973206e6f7420526567697374657265640000815260200192915050565b60006124bd601a83612aa4565b7f4163636f756e7420416c72656164792052656769737465726564000000000000815260200192915050565b60006124f6601983612aa4565b7f5265717565737420416c72656164792050726f63657373656400000000000000815260200192915050565b600061252f601183612aa4565b7014995c5d595cdd08139bdd08119bdd5b99607a1b815260200192915050565b600061255c602283612aa4565b7f54686973204163636f756e7420646f6573206e6f7420697373756520616e7920815261125960f21b602082015260400192915050565b60006125a0600e83612aa4565b6d139bdd08105d5d1a1bdc9a5e995960921b815260200192915050565b60006125ca601183612aa4565b70125908191bd95cc81b9bdd08115e1a5cdd607a1b815260200192915050565b60006125f7602483612aa4565b7f5265717565737420416c7265616479204163636570746564206f722052656a6581526318dd195960e21b602082015260400192915050565b600061263d604383612aa4565b7f456974686572204163636f756e7420697320616c726561647920616e2049737381527f756572206f722068617320612070656e64696e67206973737565722072657175602082015262195cdd60ea1b604082015260600192915050565b60006126a8604d83612aa4565b7f456974686572204163636f756e7420697320616c726561647920616e2049737381527f756572206f7220646964206e6f74207769736820746f20626520616e2069737360208201526c7565722063757272656e746c7960981b604082015260600192915050565b600061271d601683612aa4565b7514995c5d595cdd08191bd95cc81b9bdd08195e1a5cdd60521b815260200192915050565b600061274f601183612aa4565b70125908191bd95cc81b9bdd08195e1a5cdd607a1b815260200192915050565b805160c0808452600091908401906127878282612406565b915050602083015184820360208601526127a18282612406565b91505060408301516127b66040860182612367565b5060608301516127c96060860182612367565b50608083015184820360808601526127e18282612406565b91505060a083015184820360a08601526127fb8282612406565b95945050505050565b805160009060608401906128188582612367565b50602083015184820360208601526128308282612406565b9150506040830151612845604086018261284d565b509392505050565b61237081612065565b6000612862828461237f565b9392505050565b60208101611b4c8284612367565b608081016128858287612367565b81810360208301526128978186612406565b90506128a66040830185612376565b6127fb606083018461284d565b60a081016128c18288612367565b81810360208301526128d38187612406565b90506128e2604083018661284d565b81810360608301526128f48185612406565b9050612903608083018461284d565b9695505050505050565b6080810161291b8287612367565b612928602083018661284d565b818103604083015261293a8185612406565b905081810360608301526129038184612406565b60208082528101611b4c8161243e565b60208082528101611b4c81612477565b60208082528101611b4c816124b0565b60208082528101611b4c816124e9565b60208082528101611b4c81612522565b60208082528101611b4c8161254f565b60208082528101611b4c81612593565b60208082528101611b4c816125bd565b60208082528101611b4c816125ea565b60208082528101611b4c81612630565b60208082528101611b4c8161269b565b60208082528101611b4c81612710565b60208082528101611b4c81612742565b60208082528101612862818461276f565b602080825281016128628184612804565b60405181810167ffffffffffffffff81118282101715612a5f57600080fd5b604052919050565b600067ffffffffffffffff821115612a7e57600080fd5b506020601f91909101601f19160190565b60009081526020902090565b5190565b919050565b90815260200190565b6000611b4c82612abd565b151590565b6001600160a01b031690565b82818337506000910152565b60005b83811015612af0578181015183820152602001612ad8565b83811115612aff576000848401525b50505050565b601f01601f191690565b612b1881612aad565b8114611fac57600080fd5b612b188161206556fea365627a7a72315820afe95bc17f4b586a7514a34ff27f5f455a9ba098b21060a867e0eab7631809626c6578706572696d656e74616cf564736f6c63430005100040", - "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101005760003560e01c80638196e22e11610097578063c58343ef11610066578063c58343ef14610227578063e54cdc6d14610247578063f554f4e41461025a578063f772c6961461027a57610100565b80638196e22e146101d957806388a52e7e146101ec57806388f949b3146101ff578063b4a99a4e1461021257610100565b80634ab52d81116100d35780634ab52d811461016d5780635c6d20ff1461019057806369b09984146101a3578063704f1b94146101c657610100565b8063114838e4146101055780632b3cb2741461011a5780633700bd5714610147578063411870b71461015a575b600080fd5b61011861011336600461212d565b61028d565b005b61012d6101283660046120d2565b610552565b60405161013e9594939291906128b3565b60405180910390f35b6101186101553660046122fa565b6106a4565b610118610168366004612291565b6108cf565b61018061017b3660046122fa565b610ad6565b60405161013e949392919061290d565b61011861019e3660046121d5565b610c2e565b6101b66101b13660046120d2565b610f11565b60405161013e9493929190612877565b6101186101d43660046120f8565b610fd5565b6101186101e73660046122fa565b611094565b6101186101fa3660046122fa565b611342565b61011861020d3660046122fa565b61147a565b61021a611671565b60405161013e9190612869565b61023a6102353660046122fa565b611680565b60405161013e9190612a2f565b61012d6102553660046122fa565b6117cb565b61026d610268366004612318565b61185a565b60405161013e9190612a1e565b610118610288366004612348565b611b52565b3360008181526003602052604090206002015460ff1615156001146102cd5760405162461bcd60e51b81526004016102c49061295e565b60405180910390fd5b6001600160a01b038416600090815260046020526040902060029081015485911461030a5760405162461bcd60e51b81526004016102c49061299e565b610312611e03565b6001600160a01b03861660009081526004602090815260409182902060030180548351601f6002600019610100600186161502019093169290920491820184900484028101840190945280845290918301828280156103b25780601f10610387576101008083540402835291602001916103b2565b820191906000526020600020905b81548152906001019060200180831161039557829003601f168201915b505050918352505060208082018890523360408084018290526001600160a01b03891660608501526080840188905280518082018252600781526650656e64696e6760c81b8185015260a085015260009182526003808452818320908101805460018101909155835260040183529020825180518493610436928492910190611e4b565b50602082810151805161044f9260018501920190611e4b565b5060408201516002820180546001600160a01b039283166001600160a01b0319918216179091556060840151600384018054919093169116179055608082015180516104a5916004840191602090910190611e4b565b5060a082015180516104c1916005840191602090910190611e4b565b509050506104cd611ec9565b3381526020808201868152600160408085018290526001600160a01b038b81166000908152600480875283822090810180548087019091558252600501865291909120855181546001600160a01b031916921691909117815591518051859461053a938501920190611e4b565b50604082015181600201559050505050505050505050565b6004602090815260009182526040918290208054600180830180548651600261010094831615949094026000190190911692909204601f81018690048602830186019096528582526001600160a01b039092169492939092908301828280156105fc5780601f106105d1576101008083540402835291602001916105fc565b820191906000526020600020905b8154815290600101906020018083116105df57829003601f168201915b505050506002838101546003850180546040805160206001841615610100026000190190931695909504601f8101839004830286018301909152808552959692959294509091908301828280156106945780601f1061066957610100808354040283529160200191610694565b820191906000526020600020905b81548152906001019060200180831161067757829003601f168201915b5050505050908060040154905085565b3360008181526003602052604090206002015460ff1615156001146106db5760405162461bcd60e51b81526004016102c49061295e565b3360009081526003602081905260409091200154821061070d5760405162461bcd60e51b81526004016102c4906129be565b815b33600090815260036020819052604090912001546000190181101561083357336000908152600360209081526040808320600185810185526004909101909252808320848452922082549091610778918391859160029181161561010002600019011604611ef3565b50600182018160010190805460018160011615610100020316600290046107a0929190611ef3565b5060028281015482820180546001600160a01b039283166001600160a01b03199182161790915560038086015490850180549190931691161790556004808401805461080093928501926101006001831615026000190190911604611ef3565b5060058201816005019080546001816001161561010002031660029004610828929190611ef3565b50505060010161070f565b5033600090815260036020818152604080842092830154600019018452600490920190528120906108648282611f68565b610872600183016000611f68565b6002820180546001600160a01b031990811690915560038301805490911690556108a0600483016000611f68565b6108ae600583016000611f68565b50503360009081526003602081905260409091200180546000190190555050565b3360008181526003602052604090206002015460ff1615156001146109065760405162461bcd60e51b81526004016102c49061295e565b33600090815260046020526040902060020154156109365760405162461bcd60e51b81526004016102c4906129de565b61093e611faf565b33808252600160408084018290526020808501888152606086018890526000608087018190529485526004825291909320845181546001600160a01b0319166001600160a01b0390911617815590518051859492936109a293908501920190611e4b565b5060408201516002820155606082015180516109c8916003840191602090910190611e4b565b50608082015181600401559050506109de611fe7565b3381526001602080830182815260408401878152606085018990526002805494850180825560009190915285517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace600490960295860180546001600160a01b0319166001600160a01b0390921691909117815592517f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf8601559051805191948694610aaf937f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ad0909201920190611e4b565b5060608201518051610acb916003840191602090910190611e4b565b505050505050505050565b60028181548110610ae357fe5b6000918252602091829020600491909102018054600180830154600280850180546040805161010096831615969096026000190190911692909204601f81018890048802850188019092528184526001600160a01b0390941696509094919291830182828015610b945780601f10610b6957610100808354040283529160200191610b94565b820191906000526020600020905b815481529060010190602001808311610b7757829003601f168201915b5050505060038301805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152949594935090830182828015610c245780601f10610bf957610100808354040283529160200191610c24565b820191906000526020600020905b815481529060010190602001808311610c0757829003601f168201915b5050505050905084565b3360008181526003602052604090206002015460ff161515600114610c655760405162461bcd60e51b81526004016102c49061295e565b6001600160a01b0385166000908152600460205260409020600290810154869114610ca25760405162461bcd60e51b81526004016102c49061299e565b33600090815260036020819052604090912001548410610cd45760405162461bcd60e51b81526004016102c4906129be565b610cdc611e03565b6001600160a01b03871660009081526004602090815260409182902060030180548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529091830182828015610d7c5780601f10610d5157610100808354040283529160200191610d7c565b820191906000526020600020905b815481529060010190602001808311610d5f57829003601f168201915b505050918352505060208082018990523360408084018290526001600160a01b038a1660608501526080840189905280518082018252600781526650656e64696e6760c81b8185015260a085015260009182526003835280822088835260040183529020825180518493610df4928492910190611e4b565b506020828101518051610e0d9260018501920190611e4b565b5060408201516002820180546001600160a01b039283166001600160a01b031991821617909155606084015160038401805491909316911617905560808201518051610e63916004840191602090910190611e4b565b5060a08201518051610e7f916005840191602090910190611e4b565b50905050610e8b611ec9565b3381526020808201868152600160408085018290526001600160a01b038c81166000908152600480875283822090810180548087019091558252600501865291909120855181546001600160a01b0319169216919091178155915180518594610ef8938501920190611e4b565b5060408201518160020155905050505050505050505050565b6003602090815260009182526040918290208054600180830180548651600261010094831615949094026000190190911692909204601f81018690048602830186019096528582526001600160a01b03909216949293909290830182828015610fbb5780601f10610f9057610100808354040283529160200191610fbb565b820191906000526020600020905b815481529060010190602001808311610f9e57829003601f168201915b505050506002830154600390930154919260ff1691905084565b3360009081526003602052604090206002015460ff16156110085760405162461bcd60e51b81526004016102c49061296e565b611010612018565b338082526000606083018190526020808401858152600160408087018290529484526003835293909220845181546001600160a01b0319166001600160a01b0390911617815591518051859461106b93908501920190611e4b565b50604082015160028201805460ff19169115159190911790556060909101516003909101555050565b3360008181526003602052604090206002015460ff1615156001146110cb5760405162461bcd60e51b81526004016102c49061295e565b336000818152600460205260409020600290810154146110fd5760405162461bcd60e51b81526004016102c49061299e565b3360009081526004602081905260409091200154831061112f5760405162461bcd60e51b81526004016102c49061298e565b33600090815260046020908152604080832086845260050190915290206002015460011461116f5760405162461bcd60e51b81526004016102c4906129ce565b336000908152600460209081526040808320868452600501909152812060028101829055546001600160a01b0316815b6001600160a01b0382166000908152600360208190526040909120015481101561131857336000908152600460205260409081902090516111e39160030190612856565b604080519182900382206001600160a01b038516600090815260036020908152838220868352600401905291909120909161121e9190612856565b60405180910390201480156112ab5750604080518082018252600781526650656e64696e6760c81b6020918201526001600160a01b03841660009081526003825282812084825260040190915281902090517f4be840e351422c3b302abb79aa7db05560ead7e387e413320822a342fca3f54e916112a191600590910190612856565b6040518091039020145b1561131057604080518082018252600881526714995a9958dd195960c21b60208083019182526001600160a01b0386166000908152600382528481208682526004019091529290922090516113069260059092019190611e4b565b5060019250611318565b60010161119f565b5060018215151461133b5760405162461bcd60e51b81526004016102c49061294e565b5050505050565b6000546001600160a01b0316331461136c5760405162461bcd60e51b81526004016102c4906129ae565b600254811061138d5760405162461bcd60e51b81526004016102c49061298e565b60006002828154811061139c57fe5b6000918252602090912060049091020154600280546001600160a01b03909216925090839081106113c957fe5b9060005260206000209060040201600101546001146113fa5760405162461bcd60e51b81526004016102c49061297e565b6001600160a01b0381166000908152600460205260409020600201546001146114355760405162461bcd60e51b81526004016102c4906129ee565b6001600160a01b0381166000908152600460205260408120600290810182905580548490811061146157fe5b9060005260206000209060040201600101819055505050565b6000546001600160a01b031633146114a45760405162461bcd60e51b81526004016102c4906129ae565b60025481106114c55760405162461bcd60e51b81526004016102c49061298e565b6000600282815481106114d457fe5b6000918252602090912060049091020154600280546001600160a01b039092169250908390811061150157fe5b9060005260206000209060040201600101546001146115325760405162461bcd60e51b81526004016102c49061297e565b6001600160a01b03811660009081526004602052604090206002015460011461156d5760405162461bcd60e51b81526004016102c4906129ee565b6001600160a01b03808216600090815260046020526040812060028181018190556001805480820180835594829052835460069091027fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6810180546001600160a01b03191692909716919091178655818401805495969495611623947fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf79093019391929181161561010002600019011604611ef3565b506002820154816002015560038201816003019080546001816001161561010002031660029004611655929190611ef3565b5060048201548160040155505050600280838154811061146157fe5b6000546001600160a01b031681565b611688611ec9565b336000818152600460205260409020600290810154146116ba5760405162461bcd60e51b81526004016102c49061299e565b336000908152600460208190526040909120015483106116ec5760405162461bcd60e51b81526004016102c4906129fe565b336000908152600460209081526040808320868452600501825291829020825160608101845281546001600160a01b03168152600180830180548651600261010094831615949094026000190190911692909204601f81018690048602830186019096528582529194929385810193919291908301828280156117b05780601f10611785576101008083540402835291602001916117b0565b820191906000526020600020905b81548152906001019060200180831161179357829003601f168201915b50505050508152602001600282015481525050915050919050565b600181815481106117d857fe5b600091825260209182902060069091020180546001808301805460408051601f60026000199685161561010002969096019093169490940491820187900487028401870190528083526001600160a01b0390931695509293909291908301828280156105fc5780601f106105d1576101008083540402835291602001916105fc565b611862611e03565b6001600160a01b03821660009081526003602081905260409091200154831061189d5760405162461bcd60e51b81526004016102c490612a0e565b6001600160a01b03821660009081526003602090815260408083208684526004018252918290208251815460026001821615610100026000190190911604601f8101849004909302810160e090810190945260c081018381529093919284928491908401828280156119505780601f1061192557610100808354040283529160200191611950565b820191906000526020600020905b81548152906001019060200180831161193357829003601f168201915b50505050508152602001600182018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156119f25780601f106119c7576101008083540402835291602001916119f2565b820191906000526020600020905b8154815290600101906020018083116119d557829003601f168201915b50505091835250506002828101546001600160a01b03908116602080850191909152600385015490911660408085019190915260048501805482516101006001831615026000190190911694909404601f810184900484028501840190925281845260609094019391830182828015611aac5780601f10611a8157610100808354040283529160200191611aac565b820191906000526020600020905b815481529060010190602001808311611a8f57829003601f168201915b505050918352505060058201805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152938201939291830182828015611b405780601f10611b1557610100808354040283529160200191611b40565b820191906000526020600020905b815481529060010190602001808311611b2357829003601f168201915b50505050508152505090505b92915050565b3360008181526003602052604090206002015460ff161515600114611b895760405162461bcd60e51b81526004016102c49061295e565b33600081815260046020526040902060029081015414611bbb5760405162461bcd60e51b81526004016102c49061299e565b33600090815260046020819052604090912001548410611bed5760405162461bcd60e51b81526004016102c49061298e565b336000908152600460209081526040808320878452600501909152902060020154600114611c2d5760405162461bcd60e51b81526004016102c4906129ce565b3360009081526004602090815260408083208784526005019091528120546001600160a01b0316815b6001600160a01b03821660009081526003602081905260409091200154811015611db35733600090815260046020526040908190209051611c9a9160030190612856565b604080519182900382206001600160a01b0385166000908152600360209081528382208683526004019052919091209091611cd59190612856565b6040518091039020148015611d625750604080518082018252600781526650656e64696e6760c81b6020918201526001600160a01b03841660009081526003825282812084825260040190915281902090517f4be840e351422c3b302abb79aa7db05560ead7e387e413320822a342fca3f54e91611d5891600590910190612856565b6040518091039020145b15611dab576001600160a01b038216600090815260036020908152604080832084845260040182529091208751611da192600590920191890190611e4b565b5060019250611db3565b600101611c56565b50600182151514611dd65760405162461bcd60e51b81526004016102c49061294e565b50503360009081526004602090815260408083209683526005909601905293909320600290810155505050565b6040518060c00160405280606081526020016060815260200160006001600160a01b0316815260200160006001600160a01b0316815260200160608152602001606081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611e8c57805160ff1916838001178555611eb9565b82800160010185558215611eb9579182015b82811115611eb9578251825591602001919060010190611e9e565b50611ec592915061204b565b5090565b604051806060016040528060006001600160a01b0316815260200160608152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10611f2c5780548555611eb9565b82800160010185558215611eb957600052602060002091601f016020900482015b82811115611eb9578254825591600101919060010190611f4d565b50805460018160011615610100020316600290046000825580601f10611f8e5750611fac565b601f016020900490600052602060002090810190611fac919061204b565b50565b6040518060a0016040528060006001600160a01b03168152602001606081526020016000815260200160608152602001600081525090565b604051806080016040528060006001600160a01b031681526020016000815260200160608152602001606081525090565b604051806080016040528060006001600160a01b0316815260200160608152602001600015158152602001600081525090565b61206591905b80821115611ec55760008155600101612051565b90565b8035611b4c81612b0f565b600082601f83011261208457600080fd5b813561209761209282612a67565b612a40565b915080825260208301602083018583830111156120b357600080fd5b6120be838284612ac9565b50505092915050565b8035611b4c81612b23565b6000602082840312156120e457600080fd5b60006120f08484612068565b949350505050565b60006020828403121561210a57600080fd5b813567ffffffffffffffff81111561212157600080fd5b6120f084828501612073565b6000806000806080858703121561214357600080fd5b843567ffffffffffffffff81111561215a57600080fd5b61216687828801612073565b945050602061217787828801612068565b935050604085013567ffffffffffffffff81111561219457600080fd5b6121a087828801612073565b925050606085013567ffffffffffffffff8111156121bd57600080fd5b6121c987828801612073565b91505092959194509250565b600080600080600060a086880312156121ed57600080fd5b853567ffffffffffffffff81111561220457600080fd5b61221088828901612073565b955050602061222188828901612068565b945050604086013567ffffffffffffffff81111561223e57600080fd5b61224a88828901612073565b935050606061225b888289016120c7565b925050608086013567ffffffffffffffff81111561227857600080fd5b61228488828901612073565b9150509295509295909350565b600080604083850312156122a457600080fd5b823567ffffffffffffffff8111156122bb57600080fd5b6122c785828601612073565b925050602083013567ffffffffffffffff8111156122e457600080fd5b6122f085828601612073565b9150509250929050565b60006020828403121561230c57600080fd5b60006120f084846120c7565b6000806040838503121561232b57600080fd5b600061233785856120c7565b92505060206122f085828601612068565b6000806040838503121561235b57600080fd5b60006122c785856120c7565b61237081612aad565b82525050565b61237081612ab8565b60008154600181166000811461239c57600181146123bf576123fe565b607f60028304166123ad8187612a9f565b60ff19841681529550850192506123fe565b600282046123cd8187612a9f565b95506123d885612a8f565b60005b828110156123f7578154888201526001909101906020016123db565b5050850192505b505092915050565b600061241182612a9b565b61241b8185612aa4565b935061242b818560208601612ad5565b61243481612b05565b9093019392505050565b600061244b601783612aa4565b7f55736572204964656e74697479204e6f7420466f756e64000000000000000000815260200192915050565b6000612484601e83612aa4565b7f54686973204163636f756e74206973206e6f7420526567697374657265640000815260200192915050565b60006124bd601a83612aa4565b7f4163636f756e7420416c72656164792052656769737465726564000000000000815260200192915050565b60006124f6601983612aa4565b7f5265717565737420416c72656164792050726f63657373656400000000000000815260200192915050565b600061252f601183612aa4565b7014995c5d595cdd08139bdd08119bdd5b99607a1b815260200192915050565b600061255c602283612aa4565b7f54686973204163636f756e7420646f6573206e6f7420697373756520616e7920815261125960f21b602082015260400192915050565b60006125a0600e83612aa4565b6d139bdd08105d5d1a1bdc9a5e995960921b815260200192915050565b60006125ca601183612aa4565b70125908191bd95cc81b9bdd08115e1a5cdd607a1b815260200192915050565b60006125f7602483612aa4565b7f5265717565737420416c7265616479204163636570746564206f722052656a6581526318dd195960e21b602082015260400192915050565b600061263d604383612aa4565b7f456974686572204163636f756e7420697320616c726561647920616e2049737381527f756572206f722068617320612070656e64696e67206973737565722072657175602082015262195cdd60ea1b604082015260600192915050565b60006126a8604d83612aa4565b7f456974686572204163636f756e7420697320616c726561647920616e2049737381527f756572206f7220646964206e6f74207769736820746f20626520616e2069737360208201526c7565722063757272656e746c7960981b604082015260600192915050565b600061271d601683612aa4565b7514995c5d595cdd08191bd95cc81b9bdd08195e1a5cdd60521b815260200192915050565b600061274f601183612aa4565b70125908191bd95cc81b9bdd08195e1a5cdd607a1b815260200192915050565b805160c0808452600091908401906127878282612406565b915050602083015184820360208601526127a18282612406565b91505060408301516127b66040860182612367565b5060608301516127c96060860182612367565b50608083015184820360808601526127e18282612406565b91505060a083015184820360a08601526127fb8282612406565b95945050505050565b805160009060608401906128188582612367565b50602083015184820360208601526128308282612406565b9150506040830151612845604086018261284d565b509392505050565b61237081612065565b6000612862828461237f565b9392505050565b60208101611b4c8284612367565b608081016128858287612367565b81810360208301526128978186612406565b90506128a66040830185612376565b6127fb606083018461284d565b60a081016128c18288612367565b81810360208301526128d38187612406565b90506128e2604083018661284d565b81810360608301526128f48185612406565b9050612903608083018461284d565b9695505050505050565b6080810161291b8287612367565b612928602083018661284d565b818103604083015261293a8185612406565b905081810360608301526129038184612406565b60208082528101611b4c8161243e565b60208082528101611b4c81612477565b60208082528101611b4c816124b0565b60208082528101611b4c816124e9565b60208082528101611b4c81612522565b60208082528101611b4c8161254f565b60208082528101611b4c81612593565b60208082528101611b4c816125bd565b60208082528101611b4c816125ea565b60208082528101611b4c81612630565b60208082528101611b4c8161269b565b60208082528101611b4c81612710565b60208082528101611b4c81612742565b60208082528101612862818461276f565b602080825281016128628184612804565b60405181810167ffffffffffffffff81118282101715612a5f57600080fd5b604052919050565b600067ffffffffffffffff821115612a7e57600080fd5b506020601f91909101601f19160190565b60009081526020902090565b5190565b919050565b90815260200190565b6000611b4c82612abd565b151590565b6001600160a01b031690565b82818337506000910152565b60005b83811015612af0578181015183820152602001612ad8565b83811115612aff576000848401525b50505050565b601f01601f191690565b612b1881612aad565b8114611fac57600080fd5b612b188161206556fea365627a7a72315820afe95bc17f4b586a7514a34ff27f5f455a9ba098b21060a867e0eab7631809626c6578706572696d656e74616cf564736f6c63430005100040", - "sourceMap": "102:9390:1:-;;;1595:58;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1627:5:1;:18;;-1:-1:-1;;;;;;1627:18:1;1635:10;1627:18;;;102:9390;;;;;;", - "deployedSourceMap": "102:9390:1:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;102:9390:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4810:788;;;;;;;;;:::i;:::-;;1432:46;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;6538:422;;;;;;;;;:::i;2680:809::-;;;;;;;;;:::i;1316:60::-;;;;;;;;;:::i;:::-;;;;;;;;;;;5632:872;;;;;;;;;:::i;1383:42::-;;;;;;;;;:::i;:::-;;;;;;;;;;;2262:377;;;;;;;;;:::i;8059:955::-;;;;;;;;;:::i;4198:578::-;;;;;;;;;:::i;3529:629::-;;;;;;;;;:::i;1260:20::-;;;:::i;:::-;;;;;;;;9243:246;;;;;;;;;:::i;:::-;;;;;;;;1287:22;;;;;;;;;:::i;9022:213::-;;;;;;;;;:::i;:::-;;;;;;;;7015:989;;;;;;;;;:::i;4810:788::-;4927:10;1938:19;;;;:10;:19;;;;;:30;;;;;:38;;:30;:38;1930:80;;;;-1:-1:-1;;;1930:80:1;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2087:21:1;;;;;;:12;:21;;;;;:28;;;;;4945:7;;2087:33;2079:79;;;;-1:-1:-1;;;2079:79:1;;;;;;;;;4971:21;;:::i;:::-;-1:-1:-1;;;;;5016:21:1;;;;;;:12;:21;;;;;;;;;:29;;5003:42;;;;;;-1:-1:-1;;5003:42:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5016:29;;5003:42;;5016:29;5003:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5003:42:1;;;-1:-1:-1;;5056:10:1;;;;:18;;;5099:10;5085:11;;;;:24;;;-1:-1:-1;;;;;5120:22:1;;:12;;;:22;5153:20;;;:28;;;5192:33;;;;;;;;;;-1:-1:-1;;;5192:33:1;;;;:21;;;:33;5003:10;5236:22;;;:10;:22;;;;;;5263:30;;;:32;;;;;;;;5236:60;;:26;;:60;;;;:68;;;;5003:5;;5236:68;;:60;;:68;;;;:::i;:::-;-1:-1:-1;5236:68:1;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;5236:68:1;;;;;;;;;-1:-1:-1;;;;;5236:68:1;;;-1:-1:-1;;;;;;5236:68:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;5236:68:1;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;5358:33;;:::i;:::-;5421:10;5402:29;;5442:15;;;;:29;;;5502:1;5482:17;;;;:21;;;-1:-1:-1;;;;;5514:21:1;;;-1:-1:-1;5514:21:1;;;:12;:21;;;;;;5544:30;;;:32;;;;;;;;5514:63;;:29;;:63;;;;;;:76;;;;-1:-1:-1;;;;;;5514:76:1;;;;;;;;;;;;;5402:29;;5514:76;;;;;;;;:::i;:::-;;;;;;;;;;;;;2169:1;;2021;4810:788;;;;;:::o;1432:46::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1432:46:1;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1432:46:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;1432:46:1;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1432:46:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1432:46:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6538:422::-;6580:10;1938:19;;;;:10;:19;;;;;:30;;;;;:38;;:30;:38;1930:80;;;;-1:-1:-1;;;1930:80:1;;;;;;;;;6638:10;6627:22;;;;:10;:22;;;;;;;;:30;;6618:39;;6610:71;;;;-1:-1:-1;;;6610:71:1;;;;;;;;;6707:6;6694:135;6728:10;6717:22;;;;:10;:22;;;;;;;;:30;;-1:-1:-1;;6717:32:1;6715:34;;6694:135;;;6809:10;6798:22;;;;:10;:22;;;;;;;;6827:1;6825:3;;;6798:31;;:26;;;;:31;;;;;;6766:29;;;;;:63;;:29;;:63;;:29;;6798:31;;6766:63;;;;;;;-1:-1:-1;;6766:63:1;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6766:63:1;;;;;;;;;;-1:-1:-1;;;;;6766:63:1;;;-1:-1:-1;;;;;;6766:63:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6766:63:1;;;;-1:-1:-1;;6766:63:1;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;6752:3:1;;6694:135;;;-1:-1:-1;6860:10:1;6849:22;;;;:10;:22;;;;;;;;6876:30;;;;-1:-1:-1;;6876:32:1;6849:60;;:26;;;;:60;;;;;6842:67;6849:60;:22;6842:67;:::i;:::-;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;;;;;6842:67:1;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;-1:-1:-1;;6931:10:1;6920:22;;;;:10;:22;;;;;;;;:30;:32;;-1:-1:-1;;6920:32:1;;;-1:-1:-1;;6538:422:1:o;2680:809::-;2766:10;1938:19;;;;:10;:19;;;;;:30;;;;;:38;;:30;:38;1930:80;;;;-1:-1:-1;;;1930:80:1;;;;;;;;;2817:10;2804:24;;;;:12;:24;;;;;:31;;;:36;2796:125;;;;-1:-1:-1;;;2796:125:1;;;;;;;;;2934:23;;:::i;:::-;2994:10;2968:36;;;3034:1;3015:16;;;;:20;;;3046:14;;;;:22;;;3079:17;;;:28;;;-1:-1:-1;3118:18:1;;;:22;;;3153:24;;;:12;:24;;;;;;:36;;;;-1:-1:-1;;;;;;3153:36:1;-1:-1:-1;;;;;3153:36:1;;;;;;;;;;2968;;3153:24;;:36;;;;;;;;;:::i;:::-;-1:-1:-1;3153:36:1;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3244:43;;:::i;:::-;3317:10;3298:29;;3358:1;3338:17;;;;:21;;;3370:13;;;:24;;;3405:15;;;:23;;;3439:25;27:10:-1;;23:18;;;45:23;;;-1:-1;3439:42:1;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;3439:42:1;-1:-1:-1;;;;;3439:42:1;;;;;;;;;;;;;;;;;;;23:18:-1;;3298:29:1;;3439:42;;;;;;;;;;:::i;:::-;-1:-1:-1;3439:42:1;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;2021:1;;2680:809;;;:::o;1316:60::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1316:60:1;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1316:60:1;;;;-1:-1:-1;1316:60:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;1316:60:1;;;;;;;;;;;;;;;;-1:-1:-1;;1316:60:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1316:60:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5632:872::-;5767:10;1938:19;;;;:10;:19;;;;;:30;;;;;:38;;:30;:38;1930:80;;;;-1:-1:-1;;;1930:80:1;;;;;;;;;-1:-1:-1;;;;;2087:21:1;;;;;;:12;:21;;;;;:28;;;;;5785:7;;2087:33;2079:79;;;;-1:-1:-1;;;2079:79:1;;;;;;;;;5839:10;5828:22;;;;:10;:22;;;;;;;;:30;;5819:39;;5811:71;;;;-1:-1:-1;;;5811:71:1;;;;;;;;;5903:21;;:::i;:::-;-1:-1:-1;;;;;5948:21:1;;;;;;:12;:21;;;;;;;;;:29;;5935:42;;;;;;-1:-1:-1;;5935:42:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5948:29;;5935:42;;5948:29;5935:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5935:42:1;;;-1:-1:-1;;5988:10:1;;;;:18;;;6031:10;6017:11;;;;:24;;;-1:-1:-1;;;;;6052:22:1;;:12;;;:22;6085:20;;;:28;;;6124:33;;;;;;;;;;-1:-1:-1;;;6124:33:1;;;;:21;;;:33;5935:10;6168:22;;;:10;:22;;;;;:34;;;:26;;:34;;;;:42;;;;5935:5;;6168:42;;:34;;:42;;;;:::i;:::-;-1:-1:-1;6168:42:1;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6168:42:1;;;;;;;;;-1:-1:-1;;;;;6168:42:1;;;-1:-1:-1;;;;;;6168:42:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6168:42:1;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;6264:33;;:::i;:::-;6327:10;6308:29;;6348:15;;;;:29;;;6408:1;6388:17;;;;:21;;;-1:-1:-1;;;;;6420:21:1;;;-1:-1:-1;6420:21:1;;;:12;:21;;;;;;6450:30;;;:32;;;;;;;;6420:63;;:29;;:63;;;;;;:76;;;;-1:-1:-1;;;;;;6420:76:1;;;;;;;;;;;;;6308:29;;6420:76;;;;;;;;:::i;:::-;;;;;;;;;;;;;2169:1;;2021;5632:872;;;;;;:::o;1383:42::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1383:42:1;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1383:42:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;1383:42:1;;;;;;;;;;;;;;;-1:-1:-1;1383:42:1;:::o;2262:377::-;2347:10;2336:22;;;;:10;:22;;;;;:33;;;;;:42;2328:80;;;;-1:-1:-1;;;2328:80:1;;;;;;;;;2419:19;;:::i;:::-;2471:10;2449:32;;;:19;2492:15;;;:19;;;2522:17;;;;:30;;;2584:4;-1:-1:-1;2563:18:1;;;:25;;;2599:22;;;:10;:22;;;;;;:32;;;;-1:-1:-1;;;;;;2599:32:1;-1:-1:-1;;;;;2599:32:1;;;;;;;;;;2449;;2599;;;;;;;;;:::i;:::-;-1:-1:-1;2599:32:1;;;;;;;;;-1:-1:-1;;2599:32:1;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2262:377:1:o;8059:955::-;8115:10;1938:19;;;;:10;:19;;;;;:30;;;;;:38;;:30;:38;1930:80;;;;-1:-1:-1;;;1930:80:1;;;;;;;;;8133:10;2087:21;;;;:12;:21;;;;;:28;;;;;:33;2079:79;;;;-1:-1:-1;;;2079:79:1;;;;;;;;;8185:10;8172:24;;;;:12;:24;;;;;;;;:33;;8163:42;;8155:72;;;;-1:-1:-1;;;8155:72:1;;;;;;;;;8259:10;8246:24;;;;:12;:24;;;;;;;;:40;;;:32;;:40;;;;;:47;;;8297:1;8246:52;8238:102;;;;-1:-1:-1;;;8238:102:1;;;;;;;;;8366:10;8403:1;8353:24;;;:12;:24;;;;;;;;:40;;;:32;;:40;;;;;:47;;;:51;;;8460:46;-1:-1:-1;;;;;8460:46:1;8403:1;8519:429;-1:-1:-1;;;;;8537:16:1;;;;;;:10;:16;;;;;;;;:24;;8534:27;;8519:429;;;8665:10;8652:24;;;;:12;:24;;;;;;;8636:50;;;;8652:32;;;8636:50;;;;;;;;;;;;-1:-1:-1;;;;;8602:16:1;;;;;;:10;:16;;;;;;;:23;;;:20;;:23;;;;;;8636:50;;8586:46;;8602:23;8586:46;;;;;;;;;;:100;:209;;;;-1:-1:-1;8778:16:1;;;;;;;;;;;-1:-1:-1;;;8778:16:1;;;;;-1:-1:-1;;;;;8723:16:1;;-1:-1:-1;8723:16:1;;;:10;:16;;;;;:23;;;:20;;:23;;;;;;8707:57;;8768:27;;8707:57;;8723:39;;;;;8707:57;;;;;;;;;;:88;8586:209;8583:354;;;8815:52;;;;;;;;;;;-1:-1:-1;;;8815:52:1;;;;;;;-1:-1:-1;;;;;8815:16:1;;-1:-1:-1;8815:16:1;;;:10;:16;;;;;:23;;;:20;;:23;;;;;;;:52;;;;:39;;;;;:52;;:::i;:::-;;8893:4;8886:11;;8916:5;;8583:354;8564:3;;8519:429;;;-1:-1:-1;8974:4:1;8966:12;;;;8958:48;;;;-1:-1:-1;;;8958:48:1;;;;;;;;;2169:1;;2021;8059:955;;:::o;4198:578::-;1796:5;;-1:-1:-1;;;;;1796:5:1;1782:10;:19;1774:45;;;;-1:-1:-1;;;1774:45:1;;;;;;;;;4284:25;:32;4276:40;;4268:71;;;;-1:-1:-1;;;4268:71:1;;;;;;;;;4350:21;4374:25;4400:5;4374:32;;;;;;;;;;;;;;;;;;;;;:38;4431:25;:32;;-1:-1:-1;;;;;4374:38:1;;;;-1:-1:-1;4431:25:1;4457:5;;4431:32;;;;;;;;;;;;;;;;:39;;;4474:1;4431:44;4423:83;;;;-1:-1:-1;;;4423:83:1;;;;;;;;;-1:-1:-1;;;;;4525:27:1;;;;;;:12;:27;;;;;:34;;;4563:1;4525:39;4517:138;;;;-1:-1:-1;;;4517:138:1;;;;;;;;;-1:-1:-1;;;;;4676:27:1;;4713:1;4676:27;;;:12;:27;;;;;:34;;;;:38;;;4725:32;;4751:5;;4725:32;;;;;;;;;;;;;;;;:39;;:43;;;;1830:1;4198:578;:::o;3529:629::-;1796:5;;-1:-1:-1;;;;;1796:5:1;1782:10;:19;1774:45;;;;-1:-1:-1;;;1774:45:1;;;;;;;;;3615:25;:32;3607:40;;3599:71;;;;-1:-1:-1;;;3599:71:1;;;;;;;;;3681:21;3705:25;3731:5;3705:32;;;;;;;;;;;;;;;;;;;;;:38;3762:25;:32;;-1:-1:-1;;;;;3705:38:1;;;;-1:-1:-1;3762:25:1;3788:5;;3762:32;;;;;;;;;;;;;;;;:39;;;3805:1;3762:44;3754:83;;;;-1:-1:-1;;;3754:83:1;;;;;;;;;-1:-1:-1;;;;;3856:27:1;;;;;;:12;:27;;;;;:34;;;3894:1;3856:39;3848:138;;;;-1:-1:-1;;;3848:138:1;;;;;;;;;-1:-1:-1;;;;;4007:27:1;;;;;;;:12;:27;;;;;4044:1;4007:34;;;:38;;;4056:6;27:10:-1;;23:18;;;45:23;;;4056:40:1;;;;;;;;;;;;;;;-1:-1:-1;;;;;;4056:40:1;;;;;;;;;;;-1:-1:-1;;;4056:40:1;;23:18:-1;;4007:27:1;;4056:40;;;;;;;-1:-1:-1;;4056:40:1;;;;;;-1:-1:-1;;4056:40:1;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;4149:1;4107:25;4133:5;4107:32;;;;;;;1260:20;;;-1:-1:-1;;;;;1260:20:1;;:::o;9243:246::-;9314:22;;:::i;:::-;9288:10;2087:21;;;;:12;:21;;;;;:28;;;;;:33;2079:79;;;;-1:-1:-1;;;2079:79:1;;;;;;;;;9377:10;9364:24;;;;:12;:24;;;;;;;;:33;;9356:41;;9348:76;;;;-1:-1:-1;;;9348:76:1;;;;;;;;;9455:10;9442:24;;;;:12;:24;;;;;;;;:39;;;:32;;:39;;;;;;9435:46;;;;;;;;;-1:-1:-1;;;;;9435:46:1;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9435:46:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;9442:39;;9435:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9243:246;;;;:::o;1287:22::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1287:22:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1287:22:1;;;;-1:-1:-1;1287:22:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9022:213;9087:15;;:::i;:::-;-1:-1:-1;;;;;9130:19:1;;;;;;:10;:19;;;;;;;;:27;;9122:35;;9114:65;;;;-1:-1:-1;;;9114:65:1;;;;;;;;;-1:-1:-1;;;;;9197:19:1;;;;;;:10;:19;;;;;;;;:30;;;:23;;:30;;;;;;9190:37;;;;;;;;;;;-1:-1:-1;;9190:37:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9197:30;;9190:37;;9197:30;;9190:37;;;9197:30;9190:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9190:37:1;;;-1:-1:-1;;9190:37:1;;;;;-1:-1:-1;;;;;9190:37:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;9190:37:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9190:37:1;;;-1:-1:-1;;9190:37:1;;;;;;;;;;;;;;;;-1:-1:-1;;9190:37:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9022:213;;;;;:::o;7015:989::-;7099:10;1938:19;;;;:10;:19;;;;;:30;;;;;:38;;:30;:38;1930:80;;;;-1:-1:-1;;;1930:80:1;;;;;;;;;7117:10;2087:21;;;;:12;:21;;;;;:28;;;;;:33;2079:79;;;;-1:-1:-1;;;2079:79:1;;;;;;;;;7169:10;7156:24;;;;:12;:24;;;;;;;;:33;;7147:42;;7139:72;;;;-1:-1:-1;;;7139:72:1;;;;;;;;;7243:10;7230:24;;;;:12;:24;;;;;;;;:40;;;:32;;:40;;;;;:47;;;7281:1;7230:52;7222:112;;;;-1:-1:-1;;;7222:112:1;;;;;;;;;7403:10;7347:9;7390:24;;;:12;:24;;;;;;;;:40;;;:32;;:40;;;;;:46;-1:-1:-1;;;;;7390:46:1;7347:9;7449:425;-1:-1:-1;;;;;7467:16:1;;;;;;:10;:16;;;;;;;;:24;;7464:27;;7449:425;;;7595:10;7582:24;;;;:12;:24;;;;;;;7566:50;;;;7582:32;;;7566:50;;;;;;;;;;;;-1:-1:-1;;;;;7532:16:1;;;;;;:10;:16;;;;;;;:23;;;:20;;:23;;;;;;7566:50;;7516:46;;7532:23;7516:46;;;;;;;;;;:100;:210;;;;-1:-1:-1;7709:16:1;;;;;;;;;;;-1:-1:-1;;;7709:16:1;;;;;-1:-1:-1;;;;;7654:16:1;;-1:-1:-1;7654:16:1;;;:10;:16;;;;;:23;;;:20;;:23;;;;;;7638:57;;7699:27;;7638:57;;7654:39;;;;;7638:57;;;;;;;;;;:88;7516:210;7513:350;;;-1:-1:-1;;;;;7746:16:1;;;;;;:10;:16;;;;;;;;:23;;;:20;;:23;;;;;:47;;;;:39;;;;;:47;;;;:::i;:::-;;7819:4;7812:11;;7842:5;;7513:350;7494:3;;7449:425;;;-1:-1:-1;7900:4:1;7892:12;;;;7884:48;;;;-1:-1:-1;;;7884:48:1;;;;;;;;;-1:-1:-1;;7958:10:1;7945:24;;;;:12;:24;;;;;;;;:40;;;:32;;;;:40;;;;;;7995:1;7945:47;;;:51;-1:-1:-1;;;7015:989:1:o;102:9390::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;102:9390:1;;;;;;-1:-1:-1;;;;;102:9390:1;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;102:9390:1;;;-1:-1:-1;102:9390:1;:::i;:::-;;;:::o;:::-;;;;;;;;;;-1:-1:-1;;;;;102:9390:1;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;-1:-1:-1;;;;;102:9390:1;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;-1:-1:-1;;;;;102:9390:1;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;-1:-1:-1;;;;;102:9390:1;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::o;5:130:-1:-;72:20;;97:33;72:20;97:33;;143:442;;245:3;238:4;230:6;226:17;222:27;212:2;;263:1;260;253:12;212:2;300:6;287:20;322:65;337:49;379:6;337:49;;;322:65;;;313:74;;407:6;400:5;393:21;443:4;435:6;431:17;476:4;469:5;465:16;511:3;502:6;497:3;493:16;490:25;487:2;;;528:1;525;518:12;487:2;538:41;572:6;567:3;562;538:41;;;205:380;;;;;;;;593:130;660:20;;685:33;660:20;685:33;;730:241;;834:2;822:9;813:7;809:23;805:32;802:2;;;850:1;847;840:12;802:2;885:1;902:53;947:7;927:9;902:53;;;892:63;796:175;-1:-1;;;;796:175;978:347;;1092:2;1080:9;1071:7;1067:23;1063:32;1060:2;;;1108:1;1105;1098:12;1060:2;1143:31;;1194:18;1183:30;;1180:2;;;1226:1;1223;1216:12;1180:2;1246:63;1301:7;1292:6;1281:9;1277:22;1246:63;;1332:935;;;;;1517:3;1505:9;1496:7;1492:23;1488:33;1485:2;;;1534:1;1531;1524:12;1485:2;1569:31;;1620:18;1609:30;;1606:2;;;1652:1;1649;1642:12;1606:2;1672:63;1727:7;1718:6;1707:9;1703:22;1672:63;;;1662:73;;1548:193;1772:2;1790:53;1835:7;1826:6;1815:9;1811:22;1790:53;;;1780:63;;1751:98;1908:2;1897:9;1893:18;1880:32;1932:18;1924:6;1921:30;1918:2;;;1964:1;1961;1954:12;1918:2;1984:63;2039:7;2030:6;2019:9;2015:22;1984:63;;;1974:73;;1859:194;2112:2;2101:9;2097:18;2084:32;2136:18;2128:6;2125:30;2122:2;;;2168:1;2165;2158:12;2122:2;2188:63;2243:7;2234:6;2223:9;2219:22;2188:63;;;2178:73;;2063:194;1479:788;;;;;;;;2274:1061;;;;;;2476:3;2464:9;2455:7;2451:23;2447:33;2444:2;;;2493:1;2490;2483:12;2444:2;2528:31;;2579:18;2568:30;;2565:2;;;2611:1;2608;2601:12;2565:2;2631:63;2686:7;2677:6;2666:9;2662:22;2631:63;;;2621:73;;2507:193;2731:2;2749:53;2794:7;2785:6;2774:9;2770:22;2749:53;;;2739:63;;2710:98;2867:2;2856:9;2852:18;2839:32;2891:18;2883:6;2880:30;2877:2;;;2923:1;2920;2913:12;2877:2;2943:63;2998:7;2989:6;2978:9;2974:22;2943:63;;;2933:73;;2818:194;3043:2;3061:53;3106:7;3097:6;3086:9;3082:22;3061:53;;;3051:63;;3022:98;3179:3;3168:9;3164:19;3151:33;3204:18;3196:6;3193:30;3190:2;;;3236:1;3233;3226:12;3190:2;3256:63;3311:7;3302:6;3291:9;3287:22;3256:63;;;3246:73;;3130:195;2438:897;;;;;;;;;3342:578;;;3483:2;3471:9;3462:7;3458:23;3454:32;3451:2;;;3499:1;3496;3489:12;3451:2;3534:31;;3585:18;3574:30;;3571:2;;;3617:1;3614;3607:12;3571:2;3637:63;3692:7;3683:6;3672:9;3668:22;3637:63;;;3627:73;;3513:193;3765:2;3754:9;3750:18;3737:32;3789:18;3781:6;3778:30;3775:2;;;3821:1;3818;3811:12;3775:2;3841:63;3896:7;3887:6;3876:9;3872:22;3841:63;;;3831:73;;3716:194;3445:475;;;;;;3927:241;;4031:2;4019:9;4010:7;4006:23;4002:32;3999:2;;;4047:1;4044;4037:12;3999:2;4082:1;4099:53;4144:7;4124:9;4099:53;;4175:366;;;4296:2;4284:9;4275:7;4271:23;4267:32;4264:2;;;4312:1;4309;4302:12;4264:2;4347:1;4364:53;4409:7;4389:9;4364:53;;;4354:63;;4326:97;4454:2;4472:53;4517:7;4508:6;4497:9;4493:22;4472:53;;4548:472;;;4679:2;4667:9;4658:7;4654:23;4650:32;4647:2;;;4695:1;4692;4685:12;4647:2;4730:1;4747:53;4792:7;4772:9;4747:53;;5027:103;5100:24;5118:5;5100:24;;;5095:3;5088:37;5082:48;;;5257:104;5334:21;5349:5;5334:21;;5391:887;;5530:5;5524:12;5564:1;5553:9;5549:17;5577:1;5572:267;;;;5850:1;5845:427;;;;5542:730;;5572:267;5650:4;5646:1;5635:9;5631:17;5627:28;5669:88;5750:6;5745:3;5669:88;;;-1:-1;;5776:25;;5764:38;;5662:95;-1:-1;5816:16;;;-1:-1;5572:267;;5845:427;5914:1;5903:9;5899:17;5930:88;6011:6;6006:3;5930:88;;;5923:95;;6040:41;6075:5;6040:41;;;6097:1;6105:130;6119:6;6116:1;6113:13;6105:130;;;6178:14;;6165:11;;;6158:35;6225:1;6212:15;;;;6141:4;6134:12;6105:130;;;-1:-1;;6249:16;;;-1:-1;5542:730;;5500:778;;;;;;6286:319;;6384:35;6413:5;6384:35;;;6431:61;6485:6;6480:3;6431:61;;;6424:68;;6497:52;6542:6;6537:3;6530:4;6523:5;6519:16;6497:52;;;6570:29;6592:6;6570:29;;;6561:39;;;;6364:241;-1:-1;;;6364:241;6959:323;;7119:67;7183:2;7178:3;7119:67;;;7219:25;7199:46;;7273:2;7264:12;;7105:177;-1:-1;;7105:177;7291:330;;7451:67;7515:2;7510:3;7451:67;;;7551:32;7531:53;;7612:2;7603:12;;7437:184;-1:-1;;7437:184;7630:326;;7790:67;7854:2;7849:3;7790:67;;;7890:28;7870:49;;7947:2;7938:12;;7776:180;-1:-1;;7776:180;7965:325;;8125:67;8189:2;8184:3;8125:67;;;8225:27;8205:48;;8281:2;8272:12;;8111:179;-1:-1;;8111:179;8299:317;;8459:67;8523:2;8518:3;8459:67;;;-1:-1;;;8539:40;;8607:2;8598:12;;8445:171;-1:-1;;8445:171;8625:371;;8785:67;8849:2;8844:3;8785:67;;;8885:34;8865:55;;-1:-1;;;8949:2;8940:12;;8933:26;8987:2;8978:12;;8771:225;-1:-1;;8771:225;9005:314;;9165:67;9229:2;9224:3;9165:67;;;-1:-1;;;9245:37;;9310:2;9301:12;;9151:168;-1:-1;;9151:168;9328:317;;9488:67;9552:2;9547:3;9488:67;;;-1:-1;;;9568:40;;9636:2;9627:12;;9474:171;-1:-1;;9474:171;9654:373;;9814:67;9878:2;9873:3;9814:67;;;9914:34;9894:55;;-1:-1;;;9978:2;9969:12;;9962:28;10018:2;10009:12;;9800:227;-1:-1;;9800:227;10036:441;;10196:67;10260:2;10255:3;10196:67;;;10296:34;10276:55;;10365:34;10360:2;10351:12;;10344:56;-1:-1;;;10429:2;10420:12;;10413:27;10468:2;10459:12;;10182:295;-1:-1;;10182:295;10486:451;;10646:67;10710:2;10705:3;10646:67;;;10746:34;10726:55;;10815:34;10810:2;10801:12;;10794:56;-1:-1;;;10879:2;10870:12;;10863:37;10928:2;10919:12;;10632:305;-1:-1;;10632:305;10946:322;;11106:67;11170:2;11165:3;11106:67;;;-1:-1;;;11186:45;;11259:2;11250:12;;11092:176;-1:-1;;11092:176;11277:317;;11437:67;11501:2;11496:3;11437:67;;;-1:-1;;;11517:40;;11585:2;11576:12;;11423:171;-1:-1;;11423:171;11661:1421;11876:23;;11810:4;11912:38;;;11661:1421;;11801:14;;;;11965:69;11801:14;11876:23;11965:69;;;11957:77;;11830:216;12119:4;12112:5;12108:16;12102:23;12171:3;12165:4;12161:14;12154:4;12149:3;12145:14;12138:38;12191:69;12255:4;12241:12;12191:69;;;12183:77;;12056:216;12346:4;12339:5;12335:16;12329:23;12358:63;12415:4;12410:3;12406:14;12392:12;12358:63;;;12282:145;12502:4;12495:5;12491:16;12485:23;12514:63;12571:4;12566:3;12562:14;12548:12;12514:63;;;12437:146;12666:4;12659:5;12655:16;12649:23;12718:3;12712:4;12708:14;12701:4;12696:3;12692:14;12685:38;12738:69;12802:4;12788:12;12738:69;;;12730:77;;12593:226;12903:4;12896:5;12892:16;12886:23;12955:3;12949:4;12945:14;12938:4;12933:3;12929:14;12922:38;12975:69;13039:4;13025:12;12975:69;;;12967:77;11783:1299;-1:-1;;;;;11783:1299;13162:736;13392:23;;13162:736;;13325:4;13316:14;;;13421:63;13320:3;13392:23;13421:63;;;13345:145;13563:4;13556:5;13552:16;13546:23;13615:3;13609:4;13605:14;13598:4;13593:3;13589:14;13582:38;13635:69;13699:4;13685:12;13635:69;;;13627:77;;13500:216;13791:4;13784:5;13780:16;13774:23;13803:63;13860:4;13855:3;13851:14;13837:12;13803:63;;;-1:-1;13889:4;13298:600;-1:-1;;;13298:600;13905:103;13978:24;13996:5;13978:24;;14135:264;;14280:94;14370:3;14361:6;14280:94;;;14273:101;14261:138;-1:-1;;;14261:138;14406:213;14524:2;14509:18;;14538:71;14513:9;14582:6;14538:71;;14626:615;14838:3;14823:19;;14853:71;14827:9;14897:6;14853:71;;;14972:9;14966:4;14962:20;14957:2;14946:9;14942:18;14935:48;14997:74;15066:4;15057:6;14997:74;;;14989:82;;15082:66;15144:2;15133:9;15129:18;15120:6;15082:66;;;15159:72;15227:2;15216:9;15212:18;15203:6;15159:72;;15248:819;15510:3;15495:19;;15525:71;15499:9;15569:6;15525:71;;;15644:9;15638:4;15634:20;15629:2;15618:9;15614:18;15607:48;15669:74;15738:4;15729:6;15669:74;;;15661:82;;15754:72;15822:2;15811:9;15807:18;15798:6;15754:72;;;15874:9;15868:4;15864:20;15859:2;15848:9;15844:18;15837:48;15899:74;15968:4;15959:6;15899:74;;;15891:82;;15984:73;16052:3;16041:9;16037:19;16028:6;15984:73;;;15481:586;;;;;;;;;16074:707;16308:3;16293:19;;16323:71;16297:9;16367:6;16323:71;;;16405:72;16473:2;16462:9;16458:18;16449:6;16405:72;;;16525:9;16519:4;16515:20;16510:2;16499:9;16495:18;16488:48;16550:74;16619:4;16610:6;16550:74;;;16542:82;;16672:9;16666:4;16662:20;16657:2;16646:9;16642:18;16635:48;16697:74;16766:4;16757:6;16697:74;;16788:407;16979:2;16993:47;;;16964:18;;17054:131;16964:18;17054:131;;17202:407;17393:2;17407:47;;;17378:18;;17468:131;17378:18;17468:131;;17616:407;17807:2;17821:47;;;17792:18;;17882:131;17792:18;17882:131;;18030:407;18221:2;18235:47;;;18206:18;;18296:131;18206:18;18296:131;;18444:407;18635:2;18649:47;;;18620:18;;18710:131;18620:18;18710:131;;18858:407;19049:2;19063:47;;;19034:18;;19124:131;19034:18;19124:131;;19272:407;19463:2;19477:47;;;19448:18;;19538:131;19448:18;19538:131;;19686:407;19877:2;19891:47;;;19862:18;;19952:131;19862:18;19952:131;;20100:407;20291:2;20305:47;;;20276:18;;20366:131;20276:18;20366:131;;20514:407;20705:2;20719:47;;;20690:18;;20780:131;20690:18;20780:131;;20928:407;21119:2;21133:47;;;21104:18;;21194:131;21104:18;21194:131;;21342:407;21533:2;21547:47;;;21518:18;;21608:131;21518:18;21608:131;;21756:407;21947:2;21961:47;;;21932:18;;22022:131;21932:18;22022:131;;22170:357;22336:2;22350:47;;;22321:18;;22411:106;22321:18;22503:6;22411:106;;22534:385;22714:2;22728:47;;;22699:18;;22789:120;22699:18;22895:6;22789:120;;22926:256;22988:2;22982:9;23014:17;;;23089:18;23074:34;;23110:22;;;23071:62;23068:2;;;23146:1;23143;23136:12;23068:2;23162;23155:22;22966:216;;-1:-1;22966:216;23189:322;;23333:18;23325:6;23322:30;23319:2;;;23365:1;23362;23355:12;23319:2;-1:-1;23496:4;23432;23409:17;;;;-1:-1;;23405:33;23486:15;;23256:255;23518:161;;23616:14;;;23658:4;23645:18;;;23575:104;23686:118;23770:12;;23741:63;23812:144;23947:3;23925:31;-1:-1;23925:31;23965:153;24058:19;;;24107:4;24098:14;;24051:67;24298:91;;24360:24;24378:5;24360:24;;24396:85;24462:13;24455:21;;24438:43;24488:121;-1:-1;;;;;24550:54;;24533:76;24696:145;24777:6;24772:3;24767;24754:30;-1:-1;24833:1;24815:16;;24808:27;24747:94;24850:268;24915:1;24922:101;24936:6;24933:1;24930:13;24922:101;;;25003:11;;;24997:18;24984:11;;;24977:39;24958:2;24951:10;24922:101;;;25038:6;25035:1;25032:13;25029:2;;;25103:1;25094:6;25089:3;25085:16;25078:27;25029:2;24899:219;;;;;25126:97;25214:2;25194:14;-1:-1;;25190:28;;25174:49;25231:117;25300:24;25318:5;25300:24;;;25293:5;25290:35;25280:2;;25339:1;25336;25329:12;25355:117;25424:24;25442:5;25424:24;", - "source": "// SPDX-License-Identifier: MIT\r\npragma experimental ABIEncoderV2;\r\npragma solidity >=0.4.22 <0.9.0;\r\ncontract Identity {\r\n \r\n/***************Structures***************/\r\n\r\n //identity structure\r\n struct identity {\r\n string Name;\r\n string Hash;\r\n address Owner;\r\n address Issuer;\r\n string OwnerSignature;\r\n string IssuerSignature;\r\n }\r\n\r\n //user structure\r\n struct user {\r\n address UserAddress;\r\n string PublicKey;\r\n bool Registered;\r\n uint IdCount;\r\n mapping(uint => identity) Ids;\r\n }\r\n\r\n //request structure\r\n struct verifyIdRequest {\r\n address Owner;\r\n string Hash;\r\n uint Status;\r\n }\r\n\r\n //issuer verification request\r\n struct issuerVerificationRequest {\r\n address Owner;\r\n uint Status;//0->rejected , 1->pending , 2->Accepted\r\n string Id;\r\n string Desc;\r\n }\r\n\r\n //issuer structure\r\n struct issuer {\r\n address IssuerAddress;\r\n string Desc;\r\n uint Status; //0->unverified , 1->pending , 2->Accepted\r\n string IssueId;\r\n uint ReqCount;\r\n mapping(uint => verifyIdRequest) Request;\r\n }\r\n\r\n/***************Global Variables***************/\r\n\r\n address public Owner;\r\n issuer[] public Issuer;\r\n issuerVerificationRequest[] public IssuerVerificationRequest;\r\n mapping(address => user) public UserDetail;\r\n mapping(address => issuer) public IssuerDetail;\r\n\r\n/***************Constructor***************/\r\n \r\n //constructor (Runs Only On Deployment of Contract)\r\n constructor() public {\r\n Owner = msg.sender;\r\n }\r\n\r\n/***************Modifiers***************/\r\n\r\n //check message sent by owner\r\n modifier restricted() {\r\n require(msg.sender == Owner,\"Not Authorized\");\r\n _;\r\n }\r\n\r\n //check Account Registeration\r\n modifier registered(address account) {\r\n require(UserDetail[account].Registered == true,\"This Account is not Registered\");\r\n _;\r\n }\r\n modifier issue(address account) {\r\n require(IssuerDetail[account].Status == 2,\"This Account does not issue any Id\");\r\n _;\r\n }\r\n\r\n/***************Functions***************/\r\n\r\n //Register A User Account\r\n function registerUser(string memory _PublicKey) public {\r\n require(UserDetail[msg.sender].Registered == false,\"Account Already Registered\");\r\n user memory newUser;\r\n newUser.UserAddress = msg.sender;\r\n newUser.IdCount = 0;\r\n newUser.PublicKey = _PublicKey;\r\n newUser.Registered = true;\r\n UserDetail[msg.sender] = newUser;\r\n }\r\n\r\n //Request An Issuer Account\r\n function requestIssuerAccount(string memory _Desc, string memory _IssueId) registered(msg.sender) public {\r\n require(IssuerDetail[msg.sender].Status == 0,\r\n \"Either Account is already an Issuer or has a pending issuer request\");\r\n\r\n issuer memory newIssuer;\r\n newIssuer.IssuerAddress = msg.sender;\r\n newIssuer.Status = 1;\r\n newIssuer.Desc = _Desc;\r\n newIssuer.IssueId = _IssueId;\r\n newIssuer.ReqCount = 0; \r\n IssuerDetail[msg.sender] = newIssuer; \r\n\r\n //create a verification request\r\n issuerVerificationRequest memory NewRequest;\r\n NewRequest.Owner = msg.sender;\r\n NewRequest.Status = 1;\r\n NewRequest.Id = _IssueId;\r\n NewRequest.Desc = _Desc;\r\n IssuerVerificationRequest.push(NewRequest);\r\n }\r\n\r\n //Verify an Issuer Account\r\n function verifyIssuerAccount(uint _RqNo) restricted public {\r\n require(_RqNo < IssuerVerificationRequest.length , \"Request Not Found\");\r\n address IssuerAddress = IssuerVerificationRequest[_RqNo].Owner;\r\n require(IssuerVerificationRequest[_RqNo].Status == 1 , \"Request Already Processed\");\r\n require(IssuerDetail[IssuerAddress].Status == 1,\r\n \"Either Account is already an Issuer or did not wish to be an issuer currently\");\r\n \r\n IssuerDetail[IssuerAddress].Status = 2;\r\n Issuer.push(IssuerDetail[IssuerAddress]);\r\n IssuerVerificationRequest[_RqNo].Status = 2;\r\n }\r\n\r\n //Reject an issuer account\r\n function rejectIssuerAccount(uint _RqNo) restricted public {\r\n require(_RqNo < IssuerVerificationRequest.length , \"Request Not Found\");\r\n address IssuerAddress = IssuerVerificationRequest[_RqNo].Owner;\r\n require(IssuerVerificationRequest[_RqNo].Status == 1 , \"Request Already Processed\");\r\n require(IssuerDetail[IssuerAddress].Status == 1,\r\n \"Either Account is already an Issuer or did not wish to be an issuer currently\");\r\n \r\n IssuerDetail[IssuerAddress].Status = 0;\r\n IssuerVerificationRequest[_RqNo].Status = 0;\r\n }\r\n\r\n //Add A New Identity\r\n function newId(string memory _Hash, address _Issuer,string memory _Sign, string memory _IssuerHash) \r\n registered(msg.sender) issue(_Issuer) public{\r\n identity memory NewId;\r\n NewId.Name = IssuerDetail[_Issuer].IssueId;\r\n NewId.Hash = _Hash;\r\n NewId.Owner = msg.sender;\r\n NewId.Issuer = _Issuer;\r\n NewId.OwnerSignature = _Sign;\r\n NewId.IssuerSignature = \"Pending\";\r\n UserDetail[msg.sender].Ids[UserDetail[msg.sender].IdCount++] = NewId;\r\n\r\n //create a verification request\r\n verifyIdRequest memory NewRequest;\r\n NewRequest.Owner = msg.sender;\r\n NewRequest.Hash = _IssuerHash;\r\n NewRequest.Status = 1;\r\n IssuerDetail[_Issuer].Request[IssuerDetail[_Issuer].ReqCount++] = NewRequest;\r\n }\r\n\r\n //Modify An Identity\r\n function modifyId(string memory _Hash, address _Issuer,string memory _Sign , \r\n uint _IdNum , string memory _IssuerHash) registered(msg.sender) issue(_Issuer) public{\r\n require(_IdNum < UserDetail[msg.sender].IdCount , \"Id does not Exist\");\r\n \r\n identity memory NewId;\r\n NewId.Name = IssuerDetail[_Issuer].IssueId;\r\n NewId.Hash = _Hash;\r\n NewId.Owner = msg.sender;\r\n NewId.Issuer = _Issuer;\r\n NewId.OwnerSignature = _Sign;\r\n NewId.IssuerSignature = \"Pending\";\r\n UserDetail[msg.sender].Ids[_IdNum] = NewId;\r\n\r\n //create a verification request\r\n verifyIdRequest memory NewRequest;\r\n NewRequest.Owner = msg.sender;\r\n NewRequest.Hash = _IssuerHash;\r\n NewRequest.Status = 1;\r\n IssuerDetail[_Issuer].Request[IssuerDetail[_Issuer].ReqCount++] = NewRequest;\r\n }\r\n\r\n //Delete An Identity\r\n function deleteId(uint _IdNum) registered(msg.sender) public {\r\n require(_IdNum < UserDetail[msg.sender].IdCount , \"Id does not Exist\");\r\n\r\n for(uint i = _IdNum; i=0.4.22 <0.9.0;\r\ncontract Identity {\r\n \r\n/***************Structures***************/\r\n\r\n //identity structure\r\n struct identity {\r\n string Name;\r\n string Hash;\r\n address Owner;\r\n address Issuer;\r\n string OwnerSignature;\r\n string IssuerSignature;\r\n }\r\n\r\n //user structure\r\n struct user {\r\n address UserAddress;\r\n string PublicKey;\r\n bool Registered;\r\n uint IdCount;\r\n mapping(uint => identity) Ids;\r\n }\r\n\r\n //request structure\r\n struct verifyIdRequest {\r\n address Owner;\r\n string Hash;\r\n uint Status;\r\n }\r\n\r\n //issuer verification request\r\n struct issuerVerificationRequest {\r\n address Owner;\r\n uint Status;//0->rejected , 1->pending , 2->Accepted\r\n string Id;\r\n string Desc;\r\n }\r\n\r\n //issuer structure\r\n struct issuer {\r\n address IssuerAddress;\r\n string Desc;\r\n uint Status; //0->unverified , 1->pending , 2->Accepted\r\n string IssueId;\r\n uint ReqCount;\r\n mapping(uint => verifyIdRequest) Request;\r\n }\r\n\r\n/***************Global Variables***************/\r\n\r\n address public Owner;\r\n issuer[] public Issuer;\r\n issuerVerificationRequest[] public IssuerVerificationRequest;\r\n mapping(address => user) public UserDetail;\r\n mapping(address => issuer) public IssuerDetail;\r\n\r\n/***************Constructor***************/\r\n \r\n //constructor (Runs Only On Deployment of Contract)\r\n constructor() public {\r\n Owner = msg.sender;\r\n }\r\n\r\n/***************Modifiers***************/\r\n\r\n //check message sent by owner\r\n modifier restricted() {\r\n require(msg.sender == Owner,\"Not Authorized\");\r\n _;\r\n }\r\n\r\n //check Account Registeration\r\n modifier registered(address account) {\r\n require(UserDetail[account].Registered == true,\"This Account is not Registered\");\r\n _;\r\n }\r\n modifier issue(address account) {\r\n require(IssuerDetail[account].Status == 2,\"This Account does not issue any Id\");\r\n _;\r\n }\r\n\r\n/***************Functions***************/\r\n\r\n //Register A User Account\r\n function registerUser(string memory _PublicKey) public {\r\n require(UserDetail[msg.sender].Registered == false,\"Account Already Registered\");\r\n user memory newUser;\r\n newUser.UserAddress = msg.sender;\r\n newUser.IdCount = 0;\r\n newUser.PublicKey = _PublicKey;\r\n newUser.Registered = true;\r\n UserDetail[msg.sender] = newUser;\r\n }\r\n\r\n //Request An Issuer Account\r\n function requestIssuerAccount(string memory _Desc, string memory _IssueId) registered(msg.sender) public {\r\n require(IssuerDetail[msg.sender].Status == 0,\r\n \"Either Account is already an Issuer or has a pending issuer request\");\r\n\r\n issuer memory newIssuer;\r\n newIssuer.IssuerAddress = msg.sender;\r\n newIssuer.Status = 1;\r\n newIssuer.Desc = _Desc;\r\n newIssuer.IssueId = _IssueId;\r\n newIssuer.ReqCount = 0; \r\n IssuerDetail[msg.sender] = newIssuer; \r\n\r\n //create a verification request\r\n issuerVerificationRequest memory NewRequest;\r\n NewRequest.Owner = msg.sender;\r\n NewRequest.Status = 1;\r\n NewRequest.Id = _IssueId;\r\n NewRequest.Desc = _Desc;\r\n IssuerVerificationRequest.push(NewRequest);\r\n }\r\n\r\n //Verify an Issuer Account\r\n function verifyIssuerAccount(uint _RqNo) restricted public {\r\n require(_RqNo < IssuerVerificationRequest.length , \"Request Not Found\");\r\n address IssuerAddress = IssuerVerificationRequest[_RqNo].Owner;\r\n require(IssuerVerificationRequest[_RqNo].Status == 1 , \"Request Already Processed\");\r\n require(IssuerDetail[IssuerAddress].Status == 1,\r\n \"Either Account is already an Issuer or did not wish to be an issuer currently\");\r\n \r\n IssuerDetail[IssuerAddress].Status = 2;\r\n Issuer.push(IssuerDetail[IssuerAddress]);\r\n IssuerVerificationRequest[_RqNo].Status = 2;\r\n }\r\n\r\n //Reject an issuer account\r\n function rejectIssuerAccount(uint _RqNo) restricted public {\r\n require(_RqNo < IssuerVerificationRequest.length , \"Request Not Found\");\r\n address IssuerAddress = IssuerVerificationRequest[_RqNo].Owner;\r\n require(IssuerVerificationRequest[_RqNo].Status == 1 , \"Request Already Processed\");\r\n require(IssuerDetail[IssuerAddress].Status == 1,\r\n \"Either Account is already an Issuer or did not wish to be an issuer currently\");\r\n \r\n IssuerDetail[IssuerAddress].Status = 0;\r\n IssuerVerificationRequest[_RqNo].Status = 0;\r\n }\r\n\r\n //Add A New Identity\r\n function newId(string memory _Hash, address _Issuer,string memory _Sign, string memory _IssuerHash) \r\n registered(msg.sender) issue(_Issuer) public{\r\n identity memory NewId;\r\n NewId.Name = IssuerDetail[_Issuer].IssueId;\r\n NewId.Hash = _Hash;\r\n NewId.Owner = msg.sender;\r\n NewId.Issuer = _Issuer;\r\n NewId.OwnerSignature = _Sign;\r\n NewId.IssuerSignature = \"Pending\";\r\n UserDetail[msg.sender].Ids[UserDetail[msg.sender].IdCount++] = NewId;\r\n\r\n //create a verification request\r\n verifyIdRequest memory NewRequest;\r\n NewRequest.Owner = msg.sender;\r\n NewRequest.Hash = _IssuerHash;\r\n NewRequest.Status = 1;\r\n IssuerDetail[_Issuer].Request[IssuerDetail[_Issuer].ReqCount++] = NewRequest;\r\n }\r\n\r\n //Delete An Identity\r\n function deleteId(uint _IdNum) registered(msg.sender) public {\r\n require(_IdNum < UserDetail[msg.sender].IdCount , \"Id does not Exist\");\r\n\r\n for(uint i = _IdNum; i struct Identity.user storage ref)" } }, - "id": 570, + "id": 559, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 568, + "id": 557, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "5839:3:1", + "referencedDeclaration": 1021, + "src": "5732:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 569, + "id": 558, "isConstant": false, "isLValue": false, "isPure": false, @@ -7005,7 +7030,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5839:10:1", + "src": "5732:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -7016,13 +7041,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5828:22:1", + "src": "5721:22:1", "typeDescriptions": { "typeIdentifier": "t_struct$_user_$61_storage", "typeString": "struct Identity.user storage ref" } }, - "id": 571, + "id": 560, "isConstant": false, "isLValue": true, "isPure": false, @@ -7030,13 +7055,13 @@ "memberName": "IdCount", "nodeType": "MemberAccess", "referencedDeclaration": 56, - "src": "5828:30:1", + "src": "5721:30:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5819:39:1", + "src": "5712:39:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7045,14 +7070,14 @@ { "argumentTypes": null, "hexValue": "496420646f6573206e6f74204578697374", - "id": 573, + "id": 562, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5862:19:1", + "src": "5755:19:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_66c755726644811f09c882e30cea24e5e2f8b5a210588e3bf55a72599cbd44dc", @@ -7072,21 +7097,21 @@ "typeString": "literal_string \"Id does not Exist\"" } ], - "id": 565, + "id": 554, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, - "src": "5811:7:1", + "referencedDeclaration": 1025, + "src": "5704:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 574, + "id": 563, "isConstant": false, "isLValue": false, "isPure": false, @@ -7094,500 +7119,513 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5811:71:1", + "src": "5704:71:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 575, + "id": 564, "nodeType": "ExpressionStatement", - "src": "5811:71:1" - }, - { - "assignments": [ - 577 - ], - "declarations": [ - { - "constant": false, - "id": 577, - "name": "NewId", - "nodeType": "VariableDeclaration", - "scope": 664, - "src": "5903:21:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_memory_ptr", - "typeString": "struct Identity.identity" - }, - "typeName": { - "contractScope": null, - "id": 576, - "name": "identity", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 48, - "src": "5903:8:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage_ptr", - "typeString": "struct Identity.identity" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 578, - "initialValue": null, - "nodeType": "VariableDeclarationStatement", - "src": "5903:21:1" + "src": "5704:71:1" }, { - "expression": { - "argumentTypes": null, - "id": 586, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { + "body": { + "expression": { "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 579, - "name": "NewId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 577, - "src": "5935:5:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_memory_ptr", - "typeString": "struct Identity.identity memory" - } - }, - "id": 581, + "id": 597, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "memberName": "Name", - "nodeType": "MemberAccess", - "referencedDeclaration": 37, - "src": "5935:10:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { + "lValueRequested": false, + "leftHandSide": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 582, - "name": "IssuerDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "5948:12:1", + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 581, + "name": "UserDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 104, + "src": "5860:10:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" + } + }, + "id": 584, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 582, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "5871:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 583, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5871:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5860:22:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" + } + }, + "id": 585, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "Ids", + "nodeType": "MemberAccess", + "referencedDeclaration": 60, + "src": "5860:26:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", - "typeString": "mapping(address => struct Identity.issuer storage ref)" + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", + "typeString": "mapping(uint256 => struct Identity.identity storage ref)" } }, - "id": 584, + "id": 587, "indexExpression": { "argumentTypes": null, - "id": 583, - "name": "_Issuer", + "id": 586, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 549, - "src": "5961:7:1", + "referencedDeclaration": 566, + "src": "5887:1:1", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": false, + "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5948:21:1", + "src": "5860:29:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_issuer_$92_storage", - "typeString": "struct Identity.issuer storage ref" + "typeIdentifier": "t_struct$_identity_$48_storage", + "typeString": "struct Identity.identity storage ref" } }, - "id": 585, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "IssueId", - "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "5948:29:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "src": "5935:42:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "id": 587, - "nodeType": "ExpressionStatement", - "src": "5935:42:1" - }, - { - "expression": { - "argumentTypes": null, - "id": 592, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { "argumentTypes": null, - "id": 588, - "name": "NewId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 577, - "src": "5988:5:1", + "baseExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 588, + "name": "UserDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 104, + "src": "5892:10:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" + } + }, + "id": 591, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 589, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "5903:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 590, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5903:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5892:22:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" + } + }, + "id": 592, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "Ids", + "nodeType": "MemberAccess", + "referencedDeclaration": 60, + "src": "5892:26:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", + "typeString": "mapping(uint256 => struct Identity.identity storage ref)" + } + }, + "id": 596, + "indexExpression": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 595, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 593, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 566, + "src": "5919:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "argumentTypes": null, + "hexValue": "31", + "id": 594, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5921:1:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "5919:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5892:31:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_memory_ptr", - "typeString": "struct Identity.identity memory" + "typeIdentifier": "t_struct$_identity_$48_storage", + "typeString": "struct Identity.identity storage ref" } }, - "id": 590, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "Hash", - "nodeType": "MemberAccess", - "referencedDeclaration": 39, - "src": "5988:10:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 591, - "name": "_Hash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 547, - "src": "6001:5:1", + "src": "5860:63:1", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_struct$_identity_$48_storage", + "typeString": "struct Identity.identity storage ref" } }, - "src": "5988:18:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } + "id": 598, + "nodeType": "ExpressionStatement", + "src": "5860:63:1" }, - "id": 593, - "nodeType": "ExpressionStatement", - "src": "5988:18:1" - }, - { - "expression": { + "condition": { "argumentTypes": null, - "id": 599, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 577, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { + "leftExpression": { "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 594, - "name": "NewId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 577, - "src": "6017:5:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_memory_ptr", - "typeString": "struct Identity.identity memory" - } - }, - "id": 596, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "Owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 41, - "src": "6017:11:1", + "id": 569, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 566, + "src": "5809:1:1", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 597, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "6031:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 598, + "id": 576, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "6031:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "src": "6017:24:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 600, - "nodeType": "ExpressionStatement", - "src": "6017:24:1" - }, - { - "expression": { - "argumentTypes": null, - "id": 605, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { + "leftExpression": { "argumentTypes": null, - "id": 601, - "name": "NewId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 577, - "src": "6052:5:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_memory_ptr", - "typeString": "struct Identity.identity memory" - } - }, - "id": 603, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "Issuer", - "nodeType": "MemberAccess", - "referencedDeclaration": 43, - "src": "6052:12:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 604, - "name": "_Issuer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 549, - "src": "6067:7:1", + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 570, + "name": "UserDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 104, + "src": "5811:10:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" + } + }, + "id": 573, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 571, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "5822:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 572, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5822:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5811:22:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" + } + }, + "id": 574, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "IdCount", + "nodeType": "MemberAccess", + "referencedDeclaration": 56, + "src": "5811:30:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "argumentTypes": null, + "hexValue": "31", + "id": 575, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5842:1:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "5811:32:1", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "6052:22:1", + "src": "5809:34:1", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 606, - "nodeType": "ExpressionStatement", - "src": "6052:22:1" - }, - { - "expression": { - "argumentTypes": null, - "id": 611, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 607, - "name": "NewId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 577, - "src": "6085:5:1", + "id": 599, + "initializationExpression": { + "assignments": [ + 566 + ], + "declarations": [ + { + "constant": false, + "id": 566, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 599, + "src": "5792:6:1", + "stateVariable": false, + "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_memory_ptr", - "typeString": "struct Identity.identity memory" - } - }, - "id": 609, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "OwnerSignature", - "nodeType": "MemberAccess", - "referencedDeclaration": 45, - "src": "6085:20:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 565, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5792:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { + ], + "id": 568, + "initialValue": { "argumentTypes": null, - "id": 610, - "name": "_Sign", + "id": 567, + "name": "_IdNum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 551, - "src": "6108:5:1", + "referencedDeclaration": 547, + "src": "5801:6:1", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "6085:28:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } + "nodeType": "VariableDeclarationStatement", + "src": "5792:15:1" }, - "id": 612, - "nodeType": "ExpressionStatement", - "src": "6085:28:1" - }, - { - "expression": { - "argumentTypes": null, - "id": 617, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { + "loopExpression": { + "expression": { "argumentTypes": null, - "expression": { + "id": 579, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5846:3:1", + "subExpression": { "argumentTypes": null, - "id": 613, - "name": "NewId", + "id": 578, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 577, - "src": "6124:5:1", + "referencedDeclaration": 566, + "src": "5846:1:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_memory_ptr", - "typeString": "struct Identity.identity memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 615, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "IssuerSignature", - "nodeType": "MemberAccess", - "referencedDeclaration": 47, - "src": "6124:21:1", "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "50656e64696e67", - "id": 616, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6148:9:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4be840e351422c3b302abb79aa7db05560ead7e387e413320822a342fca3f54e", - "typeString": "literal_string \"Pending\"" - }, - "value": "Pending" - }, - "src": "6124:33:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } + "id": 580, + "nodeType": "ExpressionStatement", + "src": "5846:3:1" }, - "id": 618, - "nodeType": "ExpressionStatement", - "src": "6124:33:1" + "nodeType": "ForStatement", + "src": "5788:135:1" }, { "expression": { "argumentTypes": null, - "id": 627, + "id": 613, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { + "nodeType": "UnaryOperation", + "operator": "delete", + "prefix": true, + "src": "5936:67:1", + "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, @@ -7595,34 +7633,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 619, + "id": 600, "name": "UserDetail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 104, - "src": "6168:10:1", + "src": "5943:10:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", "typeString": "mapping(address => struct Identity.user storage ref)" } }, - "id": 622, + "id": 603, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 620, + "id": 601, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "6179:3:1", + "referencedDeclaration": 1021, + "src": "5954:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 621, + "id": 602, "isConstant": false, "isLValue": false, "isPure": false, @@ -7630,7 +7668,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6179:10:1", + "src": "5954:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -7641,13 +7679,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6168:22:1", + "src": "5943:22:1", "typeDescriptions": { "typeIdentifier": "t_struct$_user_$61_storage", "typeString": "struct Identity.user storage ref" } }, - "id": 623, + "id": 604, "isConstant": false, "isLValue": true, "isPure": false, @@ -7655,415 +7693,420 @@ "memberName": "Ids", "nodeType": "MemberAccess", "referencedDeclaration": 60, - "src": "6168:26:1", + "src": "5943:26:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", "typeString": "mapping(uint256 => struct Identity.identity storage ref)" } }, - "id": 625, + "id": 612, "indexExpression": { "argumentTypes": null, - "id": 624, - "name": "_IdNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 553, - "src": "6195:6:1", - "typeDescriptions": { + "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "6168:34:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage", - "typeString": "struct Identity.identity storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 626, - "name": "NewId", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 577, - "src": "6205:5:1", + }, + "id": 611, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 605, + "name": "UserDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 104, + "src": "5970:10:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" + } + }, + "id": 608, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 606, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "5981:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 607, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5981:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5970:22:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" + } + }, + "id": 609, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "IdCount", + "nodeType": "MemberAccess", + "referencedDeclaration": 56, + "src": "5970:30:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "argumentTypes": null, + "hexValue": "31", + "id": 610, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6001:1:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "5970:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "5943:60:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_memory_ptr", - "typeString": "struct Identity.identity memory" + "typeIdentifier": "t_struct$_identity_$48_storage", + "typeString": "struct Identity.identity storage ref" } }, - "src": "6168:42:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage", - "typeString": "struct Identity.identity storage ref" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "id": 628, + "id": 614, "nodeType": "ExpressionStatement", - "src": "6168:42:1" - }, - { - "assignments": [ - 630 - ], - "declarations": [ - { - "constant": false, - "id": 630, - "name": "NewRequest", - "nodeType": "VariableDeclaration", - "scope": 664, - "src": "6264:33:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_memory_ptr", - "typeString": "struct Identity.verifyIdRequest" - }, - "typeName": { - "contractScope": null, - "id": 629, - "name": "verifyIdRequest", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 68, - "src": "6264:15:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage_ptr", - "typeString": "struct Identity.verifyIdRequest" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 631, - "initialValue": null, - "nodeType": "VariableDeclarationStatement", - "src": "6264:33:1" + "src": "5936:67:1" }, { "expression": { "argumentTypes": null, - "id": 637, + "id": 620, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { + "nodeType": "UnaryOperation", + "operator": "--", + "prefix": false, + "src": "6014:32:1", + "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 632, - "name": "NewRequest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "6308:10:1", + "baseExpression": { + "argumentTypes": null, + "id": 615, + "name": "UserDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 104, + "src": "6014:10:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" + } + }, + "id": 618, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 616, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "6025:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 617, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "6025:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6014:22:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_memory_ptr", - "typeString": "struct Identity.verifyIdRequest memory" + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" } }, - "id": 634, + "id": 619, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "Owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 63, - "src": "6308:16:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 635, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "6327:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 636, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", + "memberName": "IdCount", "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "6327:10:1", + "referencedDeclaration": 56, + "src": "6014:30:1", "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "6308:29:1", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 638, + "id": 621, "nodeType": "ExpressionStatement", - "src": "6308:29:1" - }, - { - "expression": { + "src": "6014:32:1" + } + ] + }, + "documentation": null, + "id": 623, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { "argumentTypes": null, - "id": 643, + "expression": { + "argumentTypes": null, + "id": 550, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "5674:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 551, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 639, - "name": "NewRequest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "6348:10:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_memory_ptr", - "typeString": "struct Identity.verifyIdRequest memory" - } - }, - "id": 641, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "Hash", - "nodeType": "MemberAccess", - "referencedDeclaration": 65, - "src": "6348:15:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 642, - "name": "_IssuerHash", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 555, - "src": "6366:11:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "6348:29:1", + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "5674:10:1", "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" + "typeIdentifier": "t_address_payable", + "typeString": "address payable" } - }, - "id": 644, - "nodeType": "ExpressionStatement", - "src": "6348:29:1" + } + ], + "id": 552, + "modifierName": { + "argumentTypes": null, + "id": 549, + "name": "registered", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 145, + "src": "5663:10:1", + "typeDescriptions": { + "typeIdentifier": "t_modifier$_t_address_$", + "typeString": "modifier (address)" + } }, + "nodeType": "ModifierInvocation", + "src": "5663:22:1" + } + ], + "name": "deleteId", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 548, + "nodeType": "ParameterList", + "parameters": [ { - "expression": { - "argumentTypes": null, - "id": 649, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 645, - "name": "NewRequest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "6388:10:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_memory_ptr", - "typeString": "struct Identity.verifyIdRequest memory" - } - }, - "id": 647, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "Status", - "nodeType": "MemberAccess", - "referencedDeclaration": 67, - "src": "6388:17:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "31", - "id": 648, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6408:1:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "6388:21:1", + "constant": false, + "id": 547, + "name": "_IdNum", + "nodeType": "VariableDeclaration", + "scope": 623, + "src": "5650:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 546, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "5650:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 650, - "nodeType": "ExpressionStatement", - "src": "6388:21:1" - }, + "value": null, + "visibility": "internal" + } + ], + "src": "5649:13:1" + }, + "returnParameters": { + "id": 553, + "nodeType": "ParameterList", + "parameters": [], + "src": "5693:0:1" + }, + "scope": 1006, + "src": "5632:422:1", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 768, + "nodeType": "Block", + "src": "6222:888:1", + "statements": [ { "expression": { "argumentTypes": null, - "id": 662, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { + "arguments": [ + { "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 651, - "name": "IssuerDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "6420:12:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", - "typeString": "mapping(address => struct Identity.issuer storage ref)" - } - }, - "id": 653, - "indexExpression": { - "argumentTypes": null, - "id": 652, - "name": "_Issuer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 549, - "src": "6433:7:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6420:21:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_issuer_$92_storage", - "typeString": "struct Identity.issuer storage ref" - } + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 654, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Request", - "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "6420:29:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", - "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" - } - }, - "id": 660, - "indexExpression": { - "argumentTypes": null, - "id": 659, + "id": 645, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "6450:32:1", - "subExpression": { + "leftExpression": { + "argumentTypes": null, + "id": 639, + "name": "_ReqNo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 625, + "src": "6241:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 655, + "id": 640, "name": "IssuerDetail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 108, - "src": "6450:12:1", + "src": "6250:12:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", "typeString": "mapping(address => struct Identity.issuer storage ref)" } }, - "id": 657, + "id": 643, "indexExpression": { "argumentTypes": null, - "id": 656, - "name": "_Issuer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 549, - "src": "6463:7:1", + "expression": { + "argumentTypes": null, + "id": 641, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "6263:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "6263:10:1", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_address_payable", + "typeString": "address payable" } }, "isConstant": false, @@ -8071,315 +8114,94 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6450:21:1", + "src": "6250:24:1", "typeDescriptions": { "typeIdentifier": "t_struct$_issuer_$92_storage", "typeString": "struct Identity.issuer storage ref" } }, - "id": 658, + "id": 644, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": true, + "lValueRequested": false, "memberName": "ReqCount", "nodeType": "MemberAccess", "referencedDeclaration": 87, - "src": "6450:30:1", + "src": "6250:33:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, + "src": "6241:42:1", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } + "typeIdentifier": "t_bool", + "typeString": "bool" + } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "6420:63:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", - "typeString": "struct Identity.verifyIdRequest storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 661, - "name": "NewRequest", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 630, - "src": "6486:10:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_memory_ptr", - "typeString": "struct Identity.verifyIdRequest memory" + { + "argumentTypes": null, + "hexValue": "52657175657374204e6f7420466f756e64", + "id": 646, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6285:19:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4ce01095403de333dab8419ff6f0f6d417a0eb4a7f3d8e3cadabfee5b81fc06e", + "typeString": "literal_string \"Request Not Found\"" + }, + "value": "Request Not Found" } - }, - "src": "6420:76:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", - "typeString": "struct Identity.verifyIdRequest storage ref" - } - }, - "id": 663, - "nodeType": "ExpressionStatement", - "src": "6420:76:1" - } - ] - }, - "documentation": null, - "id": 665, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, + ], "expression": { - "argumentTypes": null, - "id": 558, - "name": "msg", + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4ce01095403de333dab8419ff6f0f6d417a0eb4a7f3d8e3cadabfee5b81fc06e", + "typeString": "literal_string \"Request Not Found\"" + } + ], + "id": 638, + "name": "require", "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "5767:3:1", + "overloadedDeclarations": [ + 1024, + 1025 + ], + "referencedDeclaration": 1025, + "src": "6233:7:1", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" } }, - "id": 559, + "id": 647, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "5767:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "id": 560, - "modifierName": { - "argumentTypes": null, - "id": 557, - "name": "registered", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 145, - "src": "5756:10:1", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_address_$", - "typeString": "modifier (address)" - } - }, - "nodeType": "ModifierInvocation", - "src": "5756:22:1" - }, - { - "arguments": [ - { - "argumentTypes": null, - "id": 562, - "name": "_Issuer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 549, - "src": "5785:7:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - } - ], - "id": 563, - "modifierName": { - "argumentTypes": null, - "id": 561, - "name": "issue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 161, - "src": "5779:5:1", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_address_$", - "typeString": "modifier (address)" - } - }, - "nodeType": "ModifierInvocation", - "src": "5779:14:1" - } - ], - "name": "modifyId", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 556, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 547, - "name": "_Hash", - "nodeType": "VariableDeclaration", - "scope": 665, - "src": "5650:19:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 546, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5650:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 549, - "name": "_Issuer", - "nodeType": "VariableDeclaration", - "scope": 665, - "src": "5671:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 548, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "5671:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 551, - "name": "_Sign", - "nodeType": "VariableDeclaration", - "scope": 665, - "src": "5687:19:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 550, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5687:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 553, - "name": "_IdNum", - "nodeType": "VariableDeclaration", - "scope": 665, - "src": "5715:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 552, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "5715:4:1", + "names": [], + "nodeType": "FunctionCall", + "src": "6233:72:1", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "value": null, - "visibility": "internal" + "id": 648, + "nodeType": "ExpressionStatement", + "src": "6233:72:1" }, - { - "constant": false, - "id": 555, - "name": "_IssuerHash", - "nodeType": "VariableDeclaration", - "scope": 665, - "src": "5729:25:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 554, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "5729:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "5649:106:1" - }, - "returnParameters": { - "id": 564, - "nodeType": "ParameterList", - "parameters": [], - "src": "5800:0:1" - }, - "scope": 1090, - "src": "5632:872:1", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 742, - "nodeType": "Block", - "src": "6599:361:1", - "statements": [ { "expression": { "argumentTypes": null, @@ -8390,71 +8212,99 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 681, + "id": 659, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { - "argumentTypes": null, - "id": 675, - "name": "_IdNum", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "6618:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { - "argumentTypes": null, - "id": 676, - "name": "UserDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "6627:10:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } - }, - "id": 679, - "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 677, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "6638:3:1", + "baseExpression": { + "argumentTypes": null, + "id": 650, + "name": "IssuerDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 108, + "src": "6324:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", + "typeString": "mapping(address => struct Identity.issuer storage ref)" + } + }, + "id": 653, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 651, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "6337:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 652, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "6337:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6324:24:1", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_struct$_issuer_$92_storage", + "typeString": "struct Identity.issuer storage ref" } }, - "id": 678, + "id": 654, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "sender", + "memberName": "Request", "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "6638:10:1", + "referencedDeclaration": 91, + "src": "6324:32:1", "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", + "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" + } + }, + "id": 656, + "indexExpression": { + "argumentTypes": null, + "id": 655, + "name": "_ReqNo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 625, + "src": "6357:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "isConstant": false, @@ -8462,27 +8312,47 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6627:22:1", + "src": "6324:40:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" + "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", + "typeString": "struct Identity.verifyIdRequest storage ref" } }, - "id": 680, + "id": 657, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "IdCount", + "memberName": "Status", "nodeType": "MemberAccess", - "referencedDeclaration": 56, - "src": "6627:30:1", + "referencedDeclaration": 67, + "src": "6324:47:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6618:39:1", + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "hexValue": "31", + "id": 658, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6375:1:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "6324:52:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8490,21 +8360,21 @@ }, { "argumentTypes": null, - "hexValue": "496420646f6573206e6f74204578697374", - "id": 682, + "hexValue": "5265717565737420416c7265616479204163636570746564206f722052656a6563746564", + "id": 660, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6661:19:1", + "src": "6389:38:1", "subdenomination": null, "typeDescriptions": { - "typeIdentifier": "t_stringliteral_66c755726644811f09c882e30cea24e5e2f8b5a210588e3bf55a72599cbd44dc", - "typeString": "literal_string \"Id does not Exist\"" + "typeIdentifier": "t_stringliteral_76e50e3f824fa2350d3670735fe651992a596a57365014d4d92289289e90265f", + "typeString": "literal_string \"Request Already Accepted or Rejected\"" }, - "value": "Id does not Exist" + "value": "Request Already Accepted or Rejected" } ], "expression": { @@ -8514,25 +8384,25 @@ "typeString": "bool" }, { - "typeIdentifier": "t_stringliteral_66c755726644811f09c882e30cea24e5e2f8b5a210588e3bf55a72599cbd44dc", - "typeString": "literal_string \"Id does not Exist\"" + "typeIdentifier": "t_stringliteral_76e50e3f824fa2350d3670735fe651992a596a57365014d4d92289289e90265f", + "typeString": "literal_string \"Request Already Accepted or Rejected\"" } ], - "id": 674, + "id": 649, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, - "src": "6610:7:1", + "referencedDeclaration": 1025, + "src": "6316:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 683, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -8540,467 +8410,1219 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6610:71:1", + "src": "6316:112:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 684, + "id": 662, "nodeType": "ExpressionStatement", - "src": "6610:71:1" + "src": "6316:112:1" }, { - "body": { + "assignments": [ + 664 + ], + "declarations": [ + { + "constant": false, + "id": 664, + "name": "flag", + "nodeType": "VariableDeclaration", + "scope": 768, + "src": "6441:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 663, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "6441:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 666, + "initialValue": { + "argumentTypes": null, + "hexValue": "66616c7365", + "id": 665, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6453:5:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "nodeType": "VariableDeclarationStatement", + "src": "6441:17:1" + }, + { + "assignments": [ + 668 + ], + "declarations": [ + { + "constant": false, + "id": 668, + "name": "User", + "nodeType": "VariableDeclaration", + "scope": 768, + "src": "6469:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 667, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6469:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 677, + "initialValue": { + "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 717, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { + "expression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { + "id": 669, + "name": "IssuerDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 108, + "src": "6484:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", + "typeString": "mapping(address => struct Identity.issuer storage ref)" + } + }, + "id": 672, + "indexExpression": { + "argumentTypes": null, + "expression": { "argumentTypes": null, - "id": 701, - "name": "UserDetail", + "id": 670, + "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "6766:10:1", + "referencedDeclaration": 1021, + "src": "6497:3:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } - }, - "id": 704, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 702, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "6777:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 703, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "6777:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "typeIdentifier": "t_magic_message", + "typeString": "msg" } }, + "id": 671, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6766:22:1", + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "6497:10:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" + "typeIdentifier": "t_address_payable", + "typeString": "address payable" } }, - "id": 705, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "Ids", - "nodeType": "MemberAccess", - "referencedDeclaration": 60, - "src": "6766:26:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", - "typeString": "mapping(uint256 => struct Identity.identity storage ref)" - } - }, - "id": 707, - "indexExpression": { - "argumentTypes": null, - "id": 706, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 686, - "src": "6793:1:1", + "nodeType": "IndexAccess", + "src": "6484:24:1", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_struct$_issuer_$92_storage", + "typeString": "struct Identity.issuer storage ref" } }, + "id": 673, "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "6766:29:1", + "lValueRequested": false, + "memberName": "Request", + "nodeType": "MemberAccess", + "referencedDeclaration": 91, + "src": "6484:32:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage", - "typeString": "struct Identity.identity storage ref" + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", + "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" } }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { + "id": 675, + "indexExpression": { "argumentTypes": null, - "baseExpression": { + "id": 674, + "name": "_ReqNo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 625, + "src": "6517:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6484:40:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", + "typeString": "struct Identity.verifyIdRequest storage ref" + } + }, + "id": 676, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "Owner", + "nodeType": "MemberAccess", + "referencedDeclaration": 63, + "src": "6484:46:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6469:61:1" + }, + { + "body": { + "id": 747, + "nodeType": "Block", + "src": "6592:376:1", + "statements": [ + { + "condition": { "argumentTypes": null, - "expression": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 708, - "name": "UserDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "6798:10:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" }, "id": 711, - "indexExpression": { + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 693, + "name": "UserDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 104, + "src": "6626:10:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" + } + }, + "id": 695, + "indexExpression": { + "argumentTypes": null, + "id": 694, + "name": "User", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 668, + "src": "6637:4:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6626:16:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" + } + }, + "id": 696, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "Ids", + "nodeType": "MemberAccess", + "referencedDeclaration": 60, + "src": "6626:20:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", + "typeString": "mapping(uint256 => struct Identity.identity storage ref)" + } + }, + "id": 698, + "indexExpression": { + "argumentTypes": null, + "id": 697, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 679, + "src": "6647:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6626:23:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_identity_$48_storage", + "typeString": "struct Identity.identity storage ref" + } + }, + "id": 699, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "Name", + "nodeType": "MemberAccess", + "referencedDeclaration": 37, + "src": "6626:28:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + ], + "id": 692, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6620:5:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": "bytes" + }, + "id": 700, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6620:35:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes storage pointer" + } + } + ], "expression": { - "argumentTypes": null, - "id": 709, - "name": "msg", + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes storage pointer" + } + ], + "id": 691, + "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "6809:3:1", + "referencedDeclaration": 1015, + "src": "6610:9:1", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 710, + "id": 701, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "6809:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "names": [], + "nodeType": "FunctionCall", + "src": "6610:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6798:22:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" - } - }, - "id": 712, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Ids", - "nodeType": "MemberAccess", - "referencedDeclaration": 60, - "src": "6798:26:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", - "typeString": "mapping(uint256 => struct Identity.identity storage ref)" - } - }, - "id": 716, - "indexExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 715, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 713, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 686, - "src": "6825:1:1", + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 704, + "name": "IssuerDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 108, + "src": "6676:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", + "typeString": "mapping(address => struct Identity.issuer storage ref)" + } + }, + "id": 707, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 705, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "6689:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 706, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "6689:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6676:24:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_issuer_$92_storage", + "typeString": "struct Identity.issuer storage ref" + } + }, + "id": 708, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "IssueId", + "nodeType": "MemberAccess", + "referencedDeclaration": 85, + "src": "6676:32:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + ], + "id": 703, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6670:5:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": "bytes" + }, + "id": 709, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6670:39:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes storage pointer" + } + ], + "id": 702, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1015, + "src": "6660:9:1", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6660:50:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "6610:100:1", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, "nodeType": "BinaryOperation", - "operator": "+", + "operator": "&&", "rightExpression": { "argumentTypes": null, - "hexValue": "31", - "id": 714, + "commonType": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + "id": 728, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "number", + "isPure": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "6827:1:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "6825:3:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6798:31:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage", - "typeString": "struct Identity.identity storage ref" - } - }, - "src": "6766:63:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage", - "typeString": "struct Identity.identity storage ref" - } - }, - "id": 718, - "nodeType": "ExpressionStatement", - "src": "6766:63:1" - }, - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 697, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 689, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 686, - "src": "6715:1:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 696, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 690, - "name": "UserDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "6717:10:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } - }, - "id": 693, - "indexExpression": { - "argumentTypes": null, - "expression": { + "leftExpression": { "argumentTypes": null, - "id": 691, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "6728:3:1", + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 714, + "name": "UserDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 104, + "src": "6748:10:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" + } + }, + "id": 716, + "indexExpression": { + "argumentTypes": null, + "id": 715, + "name": "User", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 668, + "src": "6759:4:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6748:16:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" + } + }, + "id": 717, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "Ids", + "nodeType": "MemberAccess", + "referencedDeclaration": 60, + "src": "6748:20:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", + "typeString": "mapping(uint256 => struct Identity.identity storage ref)" + } + }, + "id": 719, + "indexExpression": { + "argumentTypes": null, + "id": 718, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 679, + "src": "6769:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6748:23:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_identity_$48_storage", + "typeString": "struct Identity.identity storage ref" + } + }, + "id": 720, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "IssuerSignature", + "nodeType": "MemberAccess", + "referencedDeclaration": 47, + "src": "6748:39:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + ], + "id": 713, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6742:5:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": "bytes" + }, + "id": 721, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6742:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes storage pointer" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_storage_ptr", + "typeString": "bytes storage pointer" + } + ], + "id": 712, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1015, + "src": "6732:9:1", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 722, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6732:57:1", "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" } }, - "id": 692, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "6728:10:1", + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "50656e64696e67", + "id": 725, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6809:9:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_4be840e351422c3b302abb79aa7db05560ead7e387e413320822a342fca3f54e", + "typeString": "literal_string \"Pending\"" + }, + "value": "Pending" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_4be840e351422c3b302abb79aa7db05560ead7e387e413320822a342fca3f54e", + "typeString": "literal_string \"Pending\"" + } + ], + "id": 724, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "6803:5:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", + "typeString": "type(bytes storage pointer)" + }, + "typeName": "bytes" + }, + "id": 726, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6803:16:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } + ], + "id": 723, + "name": "keccak256", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1015, + "src": "6793:9:1", + "typeDescriptions": { + "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", + "typeString": "function (bytes memory) pure returns (bytes32)" + } + }, + "id": 727, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "6793:27:1", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + "src": "6732:88:1", "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6717:22:1", + "src": "6610:210:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 694, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "IdCount", - "nodeType": "MemberAccess", - "referencedDeclaration": 56, - "src": "6717:30:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "falseBody": null, + "id": 746, + "nodeType": "IfStatement", + "src": "6607:350:1", + "trueBody": { + "id": 745, + "nodeType": "Block", + "src": "6821:136:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 738, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 730, + "name": "UserDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 104, + "src": "6840:10:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" + } + }, + "id": 732, + "indexExpression": { + "argumentTypes": null, + "id": 731, + "name": "User", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 668, + "src": "6851:4:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6840:16:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" + } + }, + "id": 733, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "Ids", + "nodeType": "MemberAccess", + "referencedDeclaration": 60, + "src": "6840:20:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", + "typeString": "mapping(uint256 => struct Identity.identity storage ref)" + } + }, + "id": 735, + "indexExpression": { + "argumentTypes": null, + "id": 734, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 679, + "src": "6861:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6840:23:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_identity_$48_storage", + "typeString": "struct Identity.identity storage ref" + } + }, + "id": 736, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "IssuerSignature", + "nodeType": "MemberAccess", + "referencedDeclaration": 47, + "src": "6840:39:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 737, + "name": "_Sign", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 627, + "src": "6882:5:1", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "6840:47:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 739, + "nodeType": "ExpressionStatement", + "src": "6840:47:1" + }, + { + "expression": { + "argumentTypes": null, + "id": 742, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 740, + "name": "flag", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 664, + "src": "6906:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 741, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6913:4:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "6906:11:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 743, + "nodeType": "ExpressionStatement", + "src": "6906:11:1" + }, + { + "id": 744, + "nodeType": "Break", + "src": "6936:5:1" + } + ] } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "argumentTypes": null, - "hexValue": "31", - "id": 695, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6748:1:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "6717:32:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" } - }, - "src": "6715:34:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } + ] }, - "id": 719, - "initializationExpression": { - "assignments": [ - 686 - ], - "declarations": [ - { - "constant": false, - "id": 686, - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 719, - "src": "6698:6:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 685, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "6698:4:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 688, - "initialValue": { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 687, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { "argumentTypes": null, - "id": 687, - "name": "_IdNum", + "id": 682, + "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 667, - "src": "6707:6:1", + "referencedDeclaration": 679, + "src": "6558:1:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "VariableDeclarationStatement", - "src": "6698:15:1" - }, - "loopExpression": { - "expression": { + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 683, + "name": "UserDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 104, + "src": "6561:10:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" + } + }, + "id": 685, + "indexExpression": { + "argumentTypes": null, + "id": 684, + "name": "User", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 668, + "src": "6572:4:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6561:16:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" + } + }, + "id": 686, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "IdCount", + "nodeType": "MemberAccess", + "referencedDeclaration": 56, + "src": "6561:24:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6558:27:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 748, + "initializationExpression": { + "assignments": [ + 679 + ], + "declarations": [ + { + "constant": false, + "id": 679, + "name": "i", + "nodeType": "VariableDeclaration", + "scope": 748, + "src": "6547:6:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 678, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "6547:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 681, + "initialValue": { + "argumentTypes": null, + "hexValue": "30", + "id": 680, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6554:1:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "6547:8:1" + }, + "loopExpression": { + "expression": { "argumentTypes": null, - "id": 699, + "id": 689, "isConstant": false, "isLValue": false, "isPure": false, @@ -9008,15 +9630,15 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "6752:3:1", + "src": "6588:3:1", "subExpression": { "argumentTypes": null, - "id": 698, + "id": 688, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 686, - "src": "6752:1:1", + "referencedDeclaration": 679, + "src": "6588:1:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9027,145 +9649,177 @@ "typeString": "uint256" } }, - "id": 700, + "id": 690, "nodeType": "ExpressionStatement", - "src": "6752:3:1" + "src": "6588:3:1" }, "nodeType": "ForStatement", - "src": "6694:135:1" + "src": "6543:425:1" }, { - "expression": { + "condition": { "argumentTypes": null, - "id": 733, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 751, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "delete", - "prefix": true, - "src": "6842:67:1", - "subExpression": { + "leftExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "expression": { + "id": 749, + "name": "flag", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 664, + "src": "6981:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "argumentTypes": null, + "hexValue": "66616c7365", + "id": 750, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6989:5:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "6981:13:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 756, + "nodeType": "IfStatement", + "src": "6978:60:1", + "trueBody": { + "expression": { + "argumentTypes": null, + "arguments": [ + { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 720, - "name": "UserDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "6849:10:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } - }, - "id": 723, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 721, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "6860:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 722, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "6860:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, + "hexValue": "55736572204964656e74697479204e6f7420466f756e64", + "id": 753, "isConstant": false, - "isLValue": true, - "isPure": false, + "isLValue": false, + "isPure": true, + "kind": "string", "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "6849:22:1", + "nodeType": "Literal", + "src": "7012:25:1", + "subdenomination": null, "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" + "typeIdentifier": "t_stringliteral_179851dcf74cd84bf02ee82ea38f04eba7d1ea987c1c4f01660b225766cc2617", + "typeString": "literal_string \"User Identity Not Found\"" + }, + "value": "User Identity Not Found" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_179851dcf74cd84bf02ee82ea38f04eba7d1ea987c1c4f01660b225766cc2617", + "typeString": "literal_string \"User Identity Not Found\"" } - }, - "id": 724, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Ids", - "nodeType": "MemberAccess", - "referencedDeclaration": 60, - "src": "6849:26:1", + ], + "id": 752, + "name": "revert", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1026, + 1027 + ], + "referencedDeclaration": 1027, + "src": "7005:6:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", - "typeString": "mapping(uint256 => struct Identity.identity storage ref)" + "typeIdentifier": "t_function_revert_pure$_t_string_memory_ptr_$returns$__$", + "typeString": "function (string memory) pure" } }, - "id": 732, - "indexExpression": { + "id": 754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7005:33:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 755, + "nodeType": "ExpressionStatement", + "src": "7005:33:1" + } + }, + { + "expression": { + "argumentTypes": null, + "id": 766, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 731, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "baseExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 725, - "name": "UserDetail", + "id": 757, + "name": "IssuerDetail", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "6876:10:1", + "referencedDeclaration": 108, + "src": "7051:12:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", + "typeString": "mapping(address => struct Identity.issuer storage ref)" } }, - "id": 728, + "id": 760, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 726, + "id": 758, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "6887:3:1", + "referencedDeclaration": 1021, + "src": "7064:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 727, + "id": 759, "isConstant": false, "isLValue": false, "isPure": false, @@ -9173,7 +9827,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6887:10:1", + "src": "7064:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -9184,129 +9838,38 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6876:22:1", + "src": "7051:24:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" + "typeIdentifier": "t_struct$_issuer_$92_storage", + "typeString": "struct Identity.issuer storage ref" } }, - "id": 729, + "id": 761, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "IdCount", + "memberName": "Request", "nodeType": "MemberAccess", - "referencedDeclaration": 56, - "src": "6876:30:1", + "referencedDeclaration": 91, + "src": "7051:32:1", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", + "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" } }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "argumentTypes": null, - "hexValue": "31", - "id": 730, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "6907:1:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "6876:32:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "6849:60:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage", - "typeString": "struct Identity.identity storage ref" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 734, - "nodeType": "ExpressionStatement", - "src": "6842:67:1" - }, - { - "expression": { - "argumentTypes": null, - "id": 740, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "--", - "prefix": false, - "src": "6920:32:1", - "subExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { + "id": 763, + "indexExpression": { "argumentTypes": null, - "id": 735, - "name": "UserDetail", + "id": 762, + "name": "_ReqNo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "6920:10:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } - }, - "id": 738, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 736, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "6931:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 737, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "6931:10:1", + "referencedDeclaration": 625, + "src": "7084:6:1", "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "isConstant": false, @@ -9314,39 +9877,60 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6920:22:1", + "src": "7051:40:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" + "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", + "typeString": "struct Identity.verifyIdRequest storage ref" } }, - "id": 739, + "id": 764, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "IdCount", + "memberName": "Status", "nodeType": "MemberAccess", - "referencedDeclaration": 56, - "src": "6920:30:1", + "referencedDeclaration": 67, + "src": "7051:47:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "32", + "id": 765, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7101:1:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "7051:51:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 741, + "id": 767, "nodeType": "ExpressionStatement", - "src": "6920:32:1" + "src": "7051:51:1" } ] }, "documentation": null, - "id": 743, + "id": 769, "implemented": true, "kind": "function", "modifiers": [ @@ -9356,18 +9940,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 670, + "id": 630, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "6580:3:1", + "referencedDeclaration": 1021, + "src": "6193:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 671, + "id": 631, "isConstant": false, "isLValue": false, "isPure": false, @@ -9375,44 +9959,93 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6580:10:1", + "src": "6193:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } } ], - "id": 672, + "id": 632, "modifierName": { "argumentTypes": null, - "id": 669, + "id": 629, "name": "registered", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 145, - "src": "6569:10:1", + "src": "6182:10:1", + "typeDescriptions": { + "typeIdentifier": "t_modifier$_t_address_$", + "typeString": "modifier (address)" + } + }, + "nodeType": "ModifierInvocation", + "src": "6182:22:1" + }, + { + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 634, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "6211:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 635, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "6211:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + } + ], + "id": 636, + "modifierName": { + "argumentTypes": null, + "id": 633, + "name": "issue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 161, + "src": "6205:5:1", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "6569:22:1" + "src": "6205:17:1" } ], - "name": "deleteId", + "name": "AcceptIdRequest", "nodeType": "FunctionDefinition", "parameters": { - "id": 668, + "id": 628, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 667, - "name": "_IdNum", + "id": 625, + "name": "_ReqNo", "nodeType": "VariableDeclaration", - "scope": 743, - "src": "6556:11:1", + "scope": 769, + "src": "6134:11:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9420,10 +10053,10 @@ "typeString": "uint256" }, "typeName": { - "id": 666, + "id": 624, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6556:4:1", + "src": "6134:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9431,27 +10064,53 @@ }, "value": null, "visibility": "internal" + }, + { + "constant": false, + "id": 627, + "name": "_Sign", + "nodeType": "VariableDeclaration", + "scope": 769, + "src": "6148:19:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 626, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6148:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "value": null, + "visibility": "internal" } ], - "src": "6555:13:1" + "src": "6133:35:1" }, "returnParameters": { - "id": 673, + "id": 637, "nodeType": "ParameterList", "parameters": [], - "src": "6599:0:1" + "src": "6222:0:1" }, - "scope": 1090, - "src": "6538:422:1", + "scope": 1006, + "src": "6109:1001:1", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 887, + "id": 904, "nodeType": "Block", - "src": "7128:876:1", + "src": "7250:811:1", "statements": [ { "expression": { @@ -9463,19 +10122,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 765, + "id": 789, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 759, + "id": 783, "name": "_ReqNo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "7147:6:1", + "referencedDeclaration": 771, + "src": "7269:6:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9489,34 +10148,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 760, + "id": 784, "name": "IssuerDetail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 108, - "src": "7156:12:1", + "src": "7278:12:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", "typeString": "mapping(address => struct Identity.issuer storage ref)" } }, - "id": 763, + "id": 787, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 761, + "id": 785, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "7169:3:1", + "referencedDeclaration": 1021, + "src": "7291:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 762, + "id": 786, "isConstant": false, "isLValue": false, "isPure": false, @@ -9524,7 +10183,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7169:10:1", + "src": "7291:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -9535,13 +10194,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7156:24:1", + "src": "7278:24:1", "typeDescriptions": { "typeIdentifier": "t_struct$_issuer_$92_storage", "typeString": "struct Identity.issuer storage ref" } }, - "id": 764, + "id": 788, "isConstant": false, "isLValue": true, "isPure": false, @@ -9549,13 +10208,13 @@ "memberName": "ReqCount", "nodeType": "MemberAccess", "referencedDeclaration": 87, - "src": "7156:33:1", + "src": "7278:33:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7147:42:1", + "src": "7269:42:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9564,14 +10223,14 @@ { "argumentTypes": null, "hexValue": "52657175657374204e6f7420466f756e64", - "id": 766, + "id": 790, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7191:19:1", + "src": "7313:19:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_4ce01095403de333dab8419ff6f0f6d417a0eb4a7f3d8e3cadabfee5b81fc06e", @@ -9591,21 +10250,21 @@ "typeString": "literal_string \"Request Not Found\"" } ], - "id": 758, + "id": 782, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, - "src": "7139:7:1", + "referencedDeclaration": 1025, + "src": "7261:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 767, + "id": 791, "isConstant": false, "isLValue": false, "isPure": false, @@ -9613,15 +10272,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7139:72:1", + "src": "7261:72:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 768, + "id": 792, "nodeType": "ExpressionStatement", - "src": "7139:72:1" + "src": "7261:72:1" }, { "expression": { @@ -9633,7 +10292,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 779, + "id": 803, "isConstant": false, "isLValue": false, "isPure": false, @@ -9648,34 +10307,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 770, + "id": 794, "name": "IssuerDetail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 108, - "src": "7230:12:1", + "src": "7352:12:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", "typeString": "mapping(address => struct Identity.issuer storage ref)" } }, - "id": 773, + "id": 797, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 771, + "id": 795, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "7243:3:1", + "referencedDeclaration": 1021, + "src": "7365:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 772, + "id": 796, "isConstant": false, "isLValue": false, "isPure": false, @@ -9683,7 +10342,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7243:10:1", + "src": "7365:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -9694,13 +10353,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7230:24:1", + "src": "7352:24:1", "typeDescriptions": { "typeIdentifier": "t_struct$_issuer_$92_storage", "typeString": "struct Identity.issuer storage ref" } }, - "id": 774, + "id": 798, "isConstant": false, "isLValue": true, "isPure": false, @@ -9708,21 +10367,21 @@ "memberName": "Request", "nodeType": "MemberAccess", "referencedDeclaration": 91, - "src": "7230:32:1", + "src": "7352:32:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" } }, - "id": 776, + "id": 800, "indexExpression": { "argumentTypes": null, - "id": 775, + "id": 799, "name": "_ReqNo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "7263:6:1", + "referencedDeclaration": 771, + "src": "7385:6:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9733,13 +10392,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7230:40:1", + "src": "7352:40:1", "typeDescriptions": { "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", "typeString": "struct Identity.verifyIdRequest storage ref" } }, - "id": 777, + "id": 801, "isConstant": false, "isLValue": true, "isPure": false, @@ -9747,7 +10406,7 @@ "memberName": "Status", "nodeType": "MemberAccess", "referencedDeclaration": 67, - "src": "7230:47:1", + "src": "7352:47:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9758,14 +10417,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 778, + "id": 802, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7281:1:1", + "src": "7403:1:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -9773,7 +10432,7 @@ }, "value": "1" }, - "src": "7230:52:1", + "src": "7352:52:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9782,14 +10441,14 @@ { "argumentTypes": null, "hexValue": "5265717565737420416c7265616479204163636570746564206f722052656a6563746564", - "id": 780, + "id": 804, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7295:38:1", + "src": "7407:38:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_76e50e3f824fa2350d3670735fe651992a596a57365014d4d92289289e90265f", @@ -9809,21 +10468,21 @@ "typeString": "literal_string \"Request Already Accepted or Rejected\"" } ], - "id": 769, + "id": 793, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, - "src": "7222:7:1", + "referencedDeclaration": 1025, + "src": "7344:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 781, + "id": 805, "isConstant": false, "isLValue": false, "isPure": false, @@ -9831,94 +10490,247 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7222:112:1", + "src": "7344:102:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 782, + "id": 806, "nodeType": "ExpressionStatement", - "src": "7222:112:1" + "src": "7344:102:1" }, { - "assignments": [ - 784 - ], - "declarations": [ - { - "constant": false, - "id": 784, - "name": "flag", - "nodeType": "VariableDeclaration", - "scope": 887, - "src": "7347:9:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 783, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "7347:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 786, - "initialValue": { + "expression": { "argumentTypes": null, - "hexValue": "66616c7365", - "id": 785, + "id": 816, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "bool", + "isPure": false, "lValueRequested": false, - "nodeType": "Literal", - "src": "7359:5:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" - }, - "nodeType": "VariableDeclarationStatement", - "src": "7347:17:1" - }, - { - "assignments": [ - 788 - ], - "declarations": [ - { - "constant": false, - "id": 788, - "name": "User", - "nodeType": "VariableDeclaration", - "scope": 887, - "src": "7375:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 787, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "7375:7:1", - "stateMutability": "nonpayable", + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 807, + "name": "IssuerDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 108, + "src": "7459:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", + "typeString": "mapping(address => struct Identity.issuer storage ref)" + } + }, + "id": 810, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 808, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "7472:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 809, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "7472:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7459:24:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_issuer_$92_storage", + "typeString": "struct Identity.issuer storage ref" + } + }, + "id": 811, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "Request", + "nodeType": "MemberAccess", + "referencedDeclaration": 91, + "src": "7459:32:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", + "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" + } + }, + "id": 813, + "indexExpression": { + "argumentTypes": null, + "id": 812, + "name": "_ReqNo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 771, + "src": "7492:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7459:40:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", + "typeString": "struct Identity.verifyIdRequest storage ref" + } + }, + "id": 814, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberName": "Status", + "nodeType": "MemberAccess", + "referencedDeclaration": 67, + "src": "7459:47:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "30", + "id": 815, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7509:1:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "7459:51:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 817, + "nodeType": "ExpressionStatement", + "src": "7459:51:1" + }, + { + "assignments": [ + 819 + ], + "declarations": [ + { + "constant": false, + "id": 819, + "name": "flag", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "7523:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 818, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "7523:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 821, + "initialValue": { + "argumentTypes": null, + "hexValue": "66616c7365", + "id": 820, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7535:5:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "nodeType": "VariableDeclarationStatement", + "src": "7523:17:1" + }, + { + "assignments": [ + 823 + ], + "declarations": [ + { + "constant": false, + "id": 823, + "name": "User", + "nodeType": "VariableDeclaration", + "scope": 904, + "src": "7551:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 822, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7551:7:1", + "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9928,7 +10740,7 @@ "visibility": "internal" } ], - "id": 797, + "id": 832, "initialValue": { "argumentTypes": null, "expression": { @@ -9939,34 +10751,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 789, + "id": 824, "name": "IssuerDetail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 108, - "src": "7390:12:1", + "src": "7566:12:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", "typeString": "mapping(address => struct Identity.issuer storage ref)" } }, - "id": 792, + "id": 827, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 790, + "id": 825, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "7403:3:1", + "referencedDeclaration": 1021, + "src": "7579:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 791, + "id": 826, "isConstant": false, "isLValue": false, "isPure": false, @@ -9974,7 +10786,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7403:10:1", + "src": "7579:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -9985,13 +10797,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7390:24:1", + "src": "7566:24:1", "typeDescriptions": { "typeIdentifier": "t_struct$_issuer_$92_storage", "typeString": "struct Identity.issuer storage ref" } }, - "id": 793, + "id": 828, "isConstant": false, "isLValue": true, "isPure": false, @@ -9999,21 +10811,21 @@ "memberName": "Request", "nodeType": "MemberAccess", "referencedDeclaration": 91, - "src": "7390:32:1", + "src": "7566:32:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" } }, - "id": 795, + "id": 830, "indexExpression": { "argumentTypes": null, - "id": 794, + "id": 829, "name": "_ReqNo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "7423:6:1", + "referencedDeclaration": 771, + "src": "7599:6:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10024,13 +10836,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7390:40:1", + "src": "7566:40:1", "typeDescriptions": { "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", "typeString": "struct Identity.verifyIdRequest storage ref" } }, - "id": 796, + "id": 831, "isConstant": false, "isLValue": true, "isPure": false, @@ -10038,20 +10850,20 @@ "memberName": "Owner", "nodeType": "MemberAccess", "referencedDeclaration": 63, - "src": "7390:46:1", + "src": "7566:46:1", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "VariableDeclarationStatement", - "src": "7375:61:1" + "src": "7551:61:1" }, { "body": { - "id": 867, + "id": 902, "nodeType": "Block", - "src": "7498:376:1", + "src": "7674:380:1", "statements": [ { "condition": { @@ -10060,7 +10872,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 849, + "id": 884, "isConstant": false, "isLValue": false, "isPure": false, @@ -10071,7 +10883,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 831, + "id": 866, "isConstant": false, "isLValue": false, "isPure": false, @@ -10092,26 +10904,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 813, + "id": 848, "name": "UserDetail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 104, - "src": "7532:10:1", + "src": "7708:10:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", "typeString": "mapping(address => struct Identity.user storage ref)" } }, - "id": 815, + "id": 850, "indexExpression": { "argumentTypes": null, - "id": 814, + "id": 849, "name": "User", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 788, - "src": "7543:4:1", + "referencedDeclaration": 823, + "src": "7719:4:1", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10122,13 +10934,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7532:16:1", + "src": "7708:16:1", "typeDescriptions": { "typeIdentifier": "t_struct$_user_$61_storage", "typeString": "struct Identity.user storage ref" } }, - "id": 816, + "id": 851, "isConstant": false, "isLValue": true, "isPure": false, @@ -10136,21 +10948,21 @@ "memberName": "Ids", "nodeType": "MemberAccess", "referencedDeclaration": 60, - "src": "7532:20:1", + "src": "7708:20:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", "typeString": "mapping(uint256 => struct Identity.identity storage ref)" } }, - "id": 818, + "id": 853, "indexExpression": { "argumentTypes": null, - "id": 817, + "id": 852, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 799, - "src": "7553:1:1", + "referencedDeclaration": 834, + "src": "7729:1:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10161,13 +10973,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7532:23:1", + "src": "7708:23:1", "typeDescriptions": { "typeIdentifier": "t_struct$_identity_$48_storage", "typeString": "struct Identity.identity storage ref" } }, - "id": 819, + "id": 854, "isConstant": false, "isLValue": true, "isPure": false, @@ -10175,7 +10987,7 @@ "memberName": "Name", "nodeType": "MemberAccess", "referencedDeclaration": 37, - "src": "7532:28:1", + "src": "7708:28:1", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -10189,20 +11001,20 @@ "typeString": "string storage ref" } ], - "id": 812, + "id": 847, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7526:5:1", + "src": "7702:5:1", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 820, + "id": 855, "isConstant": false, "isLValue": false, "isPure": false, @@ -10210,7 +11022,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7526:35:1", + "src": "7702:35:1", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes storage pointer" @@ -10224,18 +11036,18 @@ "typeString": "bytes storage pointer" } ], - "id": 811, + "id": 846, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "7516:9:1", + "referencedDeclaration": 1015, + "src": "7692:9:1", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 821, + "id": 856, "isConstant": false, "isLValue": false, "isPure": false, @@ -10243,7 +11055,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7516:46:1", + "src": "7692:46:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -10263,34 +11075,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 824, + "id": 859, "name": "IssuerDetail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 108, - "src": "7582:12:1", + "src": "7758:12:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", "typeString": "mapping(address => struct Identity.issuer storage ref)" } }, - "id": 827, + "id": 862, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 825, + "id": 860, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "7595:3:1", + "referencedDeclaration": 1021, + "src": "7771:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 826, + "id": 861, "isConstant": false, "isLValue": false, "isPure": false, @@ -10298,7 +11110,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7595:10:1", + "src": "7771:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -10309,13 +11121,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7582:24:1", + "src": "7758:24:1", "typeDescriptions": { "typeIdentifier": "t_struct$_issuer_$92_storage", "typeString": "struct Identity.issuer storage ref" } }, - "id": 828, + "id": 863, "isConstant": false, "isLValue": true, "isPure": false, @@ -10323,7 +11135,7 @@ "memberName": "IssueId", "nodeType": "MemberAccess", "referencedDeclaration": 85, - "src": "7582:32:1", + "src": "7758:32:1", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -10337,20 +11149,20 @@ "typeString": "string storage ref" } ], - "id": 823, + "id": 858, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7576:5:1", + "src": "7752:5:1", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 829, + "id": 864, "isConstant": false, "isLValue": false, "isPure": false, @@ -10358,7 +11170,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7576:39:1", + "src": "7752:39:1", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes storage pointer" @@ -10372,18 +11184,18 @@ "typeString": "bytes storage pointer" } ], - "id": 822, + "id": 857, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "7566:9:1", + "referencedDeclaration": 1015, + "src": "7742:9:1", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 830, + "id": 865, "isConstant": false, "isLValue": false, "isPure": false, @@ -10391,13 +11203,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7566:50:1", + "src": "7742:50:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "7516:100:1", + "src": "7692:100:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10411,7 +11223,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 848, + "id": 883, "isConstant": false, "isLValue": false, "isPure": false, @@ -10432,26 +11244,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 834, + "id": 869, "name": "UserDetail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 104, - "src": "7654:10:1", + "src": "7829:10:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", "typeString": "mapping(address => struct Identity.user storage ref)" } }, - "id": 836, + "id": 871, "indexExpression": { "argumentTypes": null, - "id": 835, + "id": 870, "name": "User", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 788, - "src": "7665:4:1", + "referencedDeclaration": 823, + "src": "7840:4:1", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10462,13 +11274,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7654:16:1", + "src": "7829:16:1", "typeDescriptions": { "typeIdentifier": "t_struct$_user_$61_storage", "typeString": "struct Identity.user storage ref" } }, - "id": 837, + "id": 872, "isConstant": false, "isLValue": true, "isPure": false, @@ -10476,21 +11288,21 @@ "memberName": "Ids", "nodeType": "MemberAccess", "referencedDeclaration": 60, - "src": "7654:20:1", + "src": "7829:20:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", "typeString": "mapping(uint256 => struct Identity.identity storage ref)" } }, - "id": 839, + "id": 874, "indexExpression": { "argumentTypes": null, - "id": 838, + "id": 873, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 799, - "src": "7675:1:1", + "referencedDeclaration": 834, + "src": "7850:1:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10501,13 +11313,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7654:23:1", + "src": "7829:23:1", "typeDescriptions": { "typeIdentifier": "t_struct$_identity_$48_storage", "typeString": "struct Identity.identity storage ref" } }, - "id": 840, + "id": 875, "isConstant": false, "isLValue": true, "isPure": false, @@ -10515,7 +11327,7 @@ "memberName": "IssuerSignature", "nodeType": "MemberAccess", "referencedDeclaration": 47, - "src": "7654:39:1", + "src": "7829:39:1", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -10529,20 +11341,20 @@ "typeString": "string storage ref" } ], - "id": 833, + "id": 868, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7648:5:1", + "src": "7823:5:1", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 841, + "id": 876, "isConstant": false, "isLValue": false, "isPure": false, @@ -10550,7 +11362,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7648:46:1", + "src": "7823:46:1", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes storage pointer" @@ -10564,18 +11376,18 @@ "typeString": "bytes storage pointer" } ], - "id": 832, + "id": 867, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "7638:9:1", + "referencedDeclaration": 1015, + "src": "7813:9:1", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 842, + "id": 877, "isConstant": false, "isLValue": false, "isPure": false, @@ -10583,7 +11395,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7638:57:1", + "src": "7813:57:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -10600,14 +11412,14 @@ { "argumentTypes": null, "hexValue": "50656e64696e67", - "id": 845, + "id": 880, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7715:9:1", + "src": "7890:9:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_4be840e351422c3b302abb79aa7db05560ead7e387e413320822a342fca3f54e", @@ -10623,20 +11435,20 @@ "typeString": "literal_string \"Pending\"" } ], - "id": 844, + "id": 879, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7709:5:1", + "src": "7884:5:1", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 846, + "id": 881, "isConstant": false, "isLValue": false, "isPure": true, @@ -10644,7 +11456,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7709:16:1", + "src": "7884:16:1", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes memory" @@ -10658,18 +11470,18 @@ "typeString": "bytes memory" } ], - "id": 843, + "id": 878, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "7699:9:1", + "referencedDeclaration": 1015, + "src": "7874:9:1", "typeDescriptions": { "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", "typeString": "function (bytes memory) pure returns (bytes32)" } }, - "id": 847, + "id": 882, "isConstant": false, "isLValue": false, "isPure": true, @@ -10677,37 +11489,37 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7699:27:1", + "src": "7874:27:1", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "7638:88:1", + "src": "7813:88:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7516:210:1", + "src": "7692:209:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 866, + "id": 901, "nodeType": "IfStatement", - "src": "7513:350:1", + "src": "7689:354:1", "trueBody": { - "id": 865, + "id": 900, "nodeType": "Block", - "src": "7727:136:1", + "src": "7902:141:1", "statements": [ { "expression": { "argumentTypes": null, - "id": 858, + "id": 893, "isConstant": false, "isLValue": false, "isPure": false, @@ -10722,26 +11534,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 850, + "id": 885, "name": "UserDetail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 104, - "src": "7746:10:1", + "src": "7921:10:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", "typeString": "mapping(address => struct Identity.user storage ref)" } }, - "id": 852, + "id": 887, "indexExpression": { "argumentTypes": null, - "id": 851, + "id": 886, "name": "User", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 788, - "src": "7757:4:1", + "referencedDeclaration": 823, + "src": "7932:4:1", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10752,13 +11564,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7746:16:1", + "src": "7921:16:1", "typeDescriptions": { "typeIdentifier": "t_struct$_user_$61_storage", "typeString": "struct Identity.user storage ref" } }, - "id": 853, + "id": 888, "isConstant": false, "isLValue": true, "isPure": false, @@ -10766,21 +11578,21 @@ "memberName": "Ids", "nodeType": "MemberAccess", "referencedDeclaration": 60, - "src": "7746:20:1", + "src": "7921:20:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", "typeString": "mapping(uint256 => struct Identity.identity storage ref)" } }, - "id": 855, + "id": 890, "indexExpression": { "argumentTypes": null, - "id": 854, + "id": 889, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 799, - "src": "7767:1:1", + "referencedDeclaration": 834, + "src": "7942:1:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10791,13 +11603,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7746:23:1", + "src": "7921:23:1", "typeDescriptions": { "typeIdentifier": "t_struct$_identity_$48_storage", "typeString": "struct Identity.identity storage ref" } }, - "id": 856, + "id": 891, "isConstant": false, "isLValue": true, "isPure": false, @@ -10805,7 +11617,7 @@ "memberName": "IssuerSignature", "nodeType": "MemberAccess", "referencedDeclaration": 47, - "src": "7746:39:1", + "src": "7921:39:1", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -10815,43 +11627,48 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 857, - "name": "_Sign", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 747, - "src": "7788:5:1", + "hexValue": "52656a6563746564", + "id": 892, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7963:10:1", + "subdenomination": null, "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } + "typeIdentifier": "t_stringliteral_1d6da6841dcfb6ef74e75eb3ebc56df589ad1a29d3f3e29120ea311982da63c9", + "typeString": "literal_string \"Rejected\"" + }, + "value": "Rejected" }, - "src": "7746:47:1", + "src": "7921:52:1", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 859, + "id": 894, "nodeType": "ExpressionStatement", - "src": "7746:47:1" + "src": "7921:52:1" }, { "expression": { "argumentTypes": null, - "id": 862, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 860, + "id": 895, "name": "flag", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 784, - "src": "7812:4:1", + "referencedDeclaration": 819, + "src": "7992:4:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10862,14 +11679,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 861, + "id": 896, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7819:4:1", + "src": "7999:4:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -10877,20 +11694,20 @@ }, "value": "true" }, - "src": "7812:11:1", + "src": "7992:11:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 863, + "id": 898, "nodeType": "ExpressionStatement", - "src": "7812:11:1" + "src": "7992:11:1" }, { - "id": 864, + "id": 899, "nodeType": "Break", - "src": "7842:5:1" + "src": "8022:5:1" } ] } @@ -10903,19 +11720,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 807, + "id": 842, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 802, + "id": 837, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 799, - "src": "7464:1:1", + "referencedDeclaration": 834, + "src": "7640:1:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10929,26 +11746,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 803, + "id": 838, "name": "UserDetail", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 104, - "src": "7467:10:1", + "src": "7643:10:1", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", "typeString": "mapping(address => struct Identity.user storage ref)" } }, - "id": 805, + "id": 840, "indexExpression": { "argumentTypes": null, - "id": 804, + "id": 839, "name": "User", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 788, - "src": "7478:4:1", + "referencedDeclaration": 823, + "src": "7654:4:1", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10959,13 +11776,13 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7467:16:1", + "src": "7643:16:1", "typeDescriptions": { "typeIdentifier": "t_struct$_user_$61_storage", "typeString": "struct Identity.user storage ref" } }, - "id": 806, + "id": 841, "isConstant": false, "isLValue": true, "isPure": false, @@ -10973,31 +11790,31 @@ "memberName": "IdCount", "nodeType": "MemberAccess", "referencedDeclaration": 56, - "src": "7467:24:1", + "src": "7643:24:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7464:27:1", + "src": "7640:27:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 868, + "id": 903, "initializationExpression": { "assignments": [ - 799 + 834 ], "declarations": [ { "constant": false, - "id": 799, + "id": 834, "name": "i", "nodeType": "VariableDeclaration", - "scope": 868, - "src": "7453:6:1", + "scope": 903, + "src": "7629:6:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11005,10 +11822,10 @@ "typeString": "uint256" }, "typeName": { - "id": 798, + "id": 833, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7453:4:1", + "src": "7629:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11018,18 +11835,18 @@ "visibility": "internal" } ], - "id": 801, + "id": 836, "initialValue": { "argumentTypes": null, "hexValue": "30", - "id": 800, + "id": 835, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7460:1:1", + "src": "7636:1:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -11038,12 +11855,12 @@ "value": "0" }, "nodeType": "VariableDeclarationStatement", - "src": "7453:8:1" + "src": "7629:8:1" }, "loopExpression": { "expression": { "argumentTypes": null, - "id": 809, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, @@ -11051,15 +11868,15 @@ "nodeType": "UnaryOperation", "operator": "++", "prefix": false, - "src": "7494:3:1", + "src": "7670:3:1", "subExpression": { "argumentTypes": null, - "id": 808, + "id": 843, "name": "i", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 799, - "src": "7494:1:1", + "referencedDeclaration": 834, + "src": "7670:1:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11070,307 +11887,38 @@ "typeString": "uint256" } }, - "id": 810, + "id": 845, "nodeType": "ExpressionStatement", - "src": "7494:3:1" + "src": "7670:3:1" }, "nodeType": "ForStatement", - "src": "7449:425:1" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 872, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 870, - "name": "flag", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 784, - "src": "7892:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 871, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7900:4:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "7892:12:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "55736572204964656e74697479204e6f7420466f756e64", - "id": 873, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7906:25:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_179851dcf74cd84bf02ee82ea38f04eba7d1ea987c1c4f01660b225766cc2617", - "typeString": "literal_string \"User Identity Not Found\"" - }, - "value": "User Identity Not Found" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_179851dcf74cd84bf02ee82ea38f04eba7d1ea987c1c4f01660b225766cc2617", - "typeString": "literal_string \"User Identity Not Found\"" - } - ], - "id": 869, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "src": "7884:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 874, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "7884:48:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 875, - "nodeType": "ExpressionStatement", - "src": "7884:48:1" - }, - { - "expression": { - "argumentTypes": null, - "id": 885, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 876, - "name": "IssuerDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "7945:12:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", - "typeString": "mapping(address => struct Identity.issuer storage ref)" - } - }, - "id": 879, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 877, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "7958:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 878, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "7958:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7945:24:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_issuer_$92_storage", - "typeString": "struct Identity.issuer storage ref" - } - }, - "id": 880, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Request", - "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "7945:32:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", - "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" - } - }, - "id": 882, - "indexExpression": { - "argumentTypes": null, - "id": 881, - "name": "_ReqNo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 745, - "src": "7978:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "7945:40:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", - "typeString": "struct Identity.verifyIdRequest storage ref" - } - }, - "id": 883, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "Status", - "nodeType": "MemberAccess", - "referencedDeclaration": 67, - "src": "7945:47:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "32", - "id": 884, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "7995:1:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "src": "7945:51:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 886, - "nodeType": "ExpressionStatement", - "src": "7945:51:1" - } - ] - }, - "documentation": null, - "id": 888, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { + "src": "7625:429:1" + } + ] + }, + "documentation": null, + "id": 905, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 750, + "id": 774, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "7099:3:1", + "referencedDeclaration": 1021, + "src": "7221:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 751, + "id": 775, "isConstant": false, "isLValue": false, "isPure": false, @@ -11378,29 +11926,29 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7099:10:1", + "src": "7221:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } } ], - "id": 752, + "id": 776, "modifierName": { "argumentTypes": null, - "id": 749, + "id": 773, "name": "registered", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 145, - "src": "7088:10:1", + "src": "7210:10:1", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "7088:22:1" + "src": "7210:22:1" }, { "arguments": [ @@ -11408,18 +11956,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 754, + "id": 778, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "7117:3:1", + "referencedDeclaration": 1021, + "src": "7239:3:1", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 755, + "id": 779, "isConstant": false, "isLValue": false, "isPure": false, @@ -11427,44 +11975,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7117:10:1", + "src": "7239:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" } } ], - "id": 756, + "id": 780, "modifierName": { "argumentTypes": null, - "id": 753, + "id": 777, "name": "issue", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 161, - "src": "7111:5:1", + "src": "7233:5:1", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "7111:17:1" + "src": "7233:17:1" } ], - "name": "AcceptIdRequest", + "name": "RejectIdRequest", "nodeType": "FunctionDefinition", "parameters": { - "id": 748, + "id": 772, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 745, + "id": 771, "name": "_ReqNo", "nodeType": "VariableDeclaration", - "scope": 888, - "src": "7040:11:1", + "scope": 905, + "src": "7190:11:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11472,10 +12020,10 @@ "typeString": "uint256" }, "typeName": { - "id": 744, + "id": 770, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7040:4:1", + "src": "7190:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11483,77 +12031,189 @@ }, "value": null, "visibility": "internal" - }, - { - "constant": false, - "id": 747, - "name": "_Sign", - "nodeType": "VariableDeclaration", - "scope": 888, - "src": "7054:19:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 746, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "7054:6:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" } ], - "src": "7039:35:1" + "src": "7189:13:1" }, "returnParameters": { - "id": 757, + "id": 781, "nodeType": "ParameterList", "parameters": [], - "src": "7128:0:1" + "src": "7250:0:1" }, - "scope": 1090, - "src": "7015:989:1", + "scope": 1006, + "src": "7165:896:1", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1030, + "id": 916, "nodeType": "Block", - "src": "8144:870:1", + "src": "8114:56:1", "statements": [ { "expression": { "argumentTypes": null, - "arguments": [ - { + "expression": { + "argumentTypes": null, + "baseExpression": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 908, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { + "id": 910, + "name": "UserDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 104, + "src": "8132:10:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" + } + }, + "id": 913, + "indexExpression": { + "argumentTypes": null, + "expression": { "argumentTypes": null, - "id": 902, - "name": "_ReqNo", + "id": 911, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "8143:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 912, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "8143:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8132:22:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" + } + }, + "id": 914, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "IdCount", + "nodeType": "MemberAccess", + "referencedDeclaration": 56, + "src": "8132:30:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 909, + "id": 915, + "nodeType": "Return", + "src": "8125:37:1" + } + ] + }, + "documentation": null, + "id": 917, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "totalId", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 906, + "nodeType": "ParameterList", + "parameters": [], + "src": "8085:2:1" + }, + "returnParameters": { + "id": 909, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 908, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 917, + "src": "8109:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 907, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8109:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "8108:6:1" + }, + "scope": 1006, + "src": "8069:101:1", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 943, + "nodeType": "Block", + "src": "8259:132:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 927, + "name": "_IdNo", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 890, - "src": "8163:6:1", + "referencedDeclaration": 919, + "src": "8278:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11567,45 +12227,29 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 903, - "name": "IssuerDetail", + "id": 928, + "name": "UserDetail", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "8172:12:1", + "referencedDeclaration": 104, + "src": "8286:10:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", - "typeString": "mapping(address => struct Identity.issuer storage ref)" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" } }, - "id": 906, + "id": 930, "indexExpression": { "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 904, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "8185:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 905, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "8185:10:1", + "id": 929, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 921, + "src": "8297:7:1", "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "typeIdentifier": "t_address", + "typeString": "address" } }, "isConstant": false, @@ -11613,27 +12257,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8172:24:1", + "src": "8286:19:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_issuer_$92_storage", - "typeString": "struct Identity.issuer storage ref" + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" } }, - "id": 907, + "id": 931, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "ReqCount", + "memberName": "IdCount", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "8172:33:1", + "referencedDeclaration": 56, + "src": "8286:27:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8163:42:1", + "src": "8278:35:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11641,21 +12285,21 @@ }, { "argumentTypes": null, - "hexValue": "52657175657374204e6f7420466f756e64", - "id": 909, + "hexValue": "496420646f6573206e6f74206578697374", + "id": 933, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8207:19:1", + "src": "8315:19:1", "subdenomination": null, "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4ce01095403de333dab8419ff6f0f6d417a0eb4a7f3d8e3cadabfee5b81fc06e", - "typeString": "literal_string \"Request Not Found\"" + "typeIdentifier": "t_stringliteral_dc72b1dc30aa33a8681d6df0f0658802a75cf2c774536257767bbb66dff67d05", + "typeString": "literal_string \"Id does not exist\"" }, - "value": "Request Not Found" + "value": "Id does not exist" } ], "expression": { @@ -11665,25 +12309,25 @@ "typeString": "bool" }, { - "typeIdentifier": "t_stringliteral_4ce01095403de333dab8419ff6f0f6d417a0eb4a7f3d8e3cadabfee5b81fc06e", - "typeString": "literal_string \"Request Not Found\"" + "typeIdentifier": "t_stringliteral_dc72b1dc30aa33a8681d6df0f0658802a75cf2c774536257767bbb66dff67d05", + "typeString": "literal_string \"Id does not exist\"" } ], - "id": 901, + "id": 926, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, - "src": "8155:7:1", + "referencedDeclaration": 1025, + "src": "8270:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", "typeString": "function (bool,string memory) pure" } }, - "id": 910, + "id": 934, "isConstant": false, "isLValue": false, "isPure": false, @@ -11691,288 +12335,526 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8155:72:1", + "src": "8270:65:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 911, + "id": 935, "nodeType": "ExpressionStatement", - "src": "8155:72:1" + "src": "8270:65:1" }, { "expression": { "argumentTypes": null, - "arguments": [ - { + "baseExpression": { + "argumentTypes": null, + "expression": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "baseExpression": { + "argumentTypes": null, + "id": 936, + "name": "UserDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 104, + "src": "8353:10:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", + "typeString": "mapping(address => struct Identity.user storage ref)" + } + }, + "id": 938, + "indexExpression": { + "argumentTypes": null, + "id": 937, + "name": "account", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 921, + "src": "8364:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } }, - "id": 922, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 913, - "name": "IssuerDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "8246:12:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", - "typeString": "mapping(address => struct Identity.issuer storage ref)" - } - }, - "id": 916, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 914, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "8259:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 915, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "8259:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8246:24:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_issuer_$92_storage", - "typeString": "struct Identity.issuer storage ref" - } - }, - "id": 917, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Request", - "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "8246:32:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", - "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" - } - }, - "id": 919, - "indexExpression": { - "argumentTypes": null, - "id": 918, - "name": "_ReqNo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 890, - "src": "8279:6:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8246:40:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", - "typeString": "struct Identity.verifyIdRequest storage ref" - } - }, - "id": 920, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Status", - "nodeType": "MemberAccess", - "referencedDeclaration": 67, - "src": "8246:47:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "hexValue": "31", - "id": 921, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8297:1:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "8246:52:1", + "nodeType": "IndexAccess", + "src": "8353:19:1", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_struct$_user_$61_storage", + "typeString": "struct Identity.user storage ref" } }, - { - "argumentTypes": null, - "hexValue": "5265717565737420416c7265616479204163636570746564206f722052656a6563746564", - "id": 923, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8301:38:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_76e50e3f824fa2350d3670735fe651992a596a57365014d4d92289289e90265f", - "typeString": "literal_string \"Request Already Accepted or Rejected\"" - }, - "value": "Request Already Accepted or Rejected" + "id": 939, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "Ids", + "nodeType": "MemberAccess", + "referencedDeclaration": 60, + "src": "8353:23:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", + "typeString": "mapping(uint256 => struct Identity.identity storage ref)" } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_76e50e3f824fa2350d3670735fe651992a596a57365014d4d92289289e90265f", - "typeString": "literal_string \"Request Already Accepted or Rejected\"" - } - ], - "id": 912, - "name": "require", + }, + "id": 941, + "indexExpression": { + "argumentTypes": null, + "id": 940, + "name": "_IdNo", "nodeType": "Identifier", - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "src": "8238:7:1", + "overloadedDeclarations": [], + "referencedDeclaration": 919, + "src": "8377:5:1", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 924, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8238:102:1", + "nodeType": "IndexAccess", + "src": "8353:30:1", "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" + "typeIdentifier": "t_struct$_identity_$48_storage", + "typeString": "struct Identity.identity storage ref" } }, - "id": 925, - "nodeType": "ExpressionStatement", - "src": "8238:102:1" + "functionReturnParameters": 925, + "id": 942, + "nodeType": "Return", + "src": "8346:37:1" + } + ] + }, + "documentation": null, + "id": 944, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "getId", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 922, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 919, + "name": "_IdNo", + "nodeType": "VariableDeclaration", + "scope": 944, + "src": "8193:10:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 918, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8193:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" }, + { + "constant": false, + "id": 921, + "name": "account", + "nodeType": "VariableDeclaration", + "scope": 944, + "src": "8205:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 920, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8205:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "8192:29:1" + }, + "returnParameters": { + "id": 925, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 924, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 944, + "src": "8243:15:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_identity_$48_memory_ptr", + "typeString": "struct Identity.identity" + }, + "typeName": { + "contractScope": null, + "id": 923, + "name": "identity", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 48, + "src": "8243:8:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_identity_$48_storage_ptr", + "typeString": "struct Identity.identity" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "8242:17:1" + }, + "scope": 1006, + "src": "8178:213:1", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 952, + "nodeType": "Block", + "src": "8448:39:1", + "statements": [ { "expression": { "argumentTypes": null, - "id": 935, + "expression": { + "argumentTypes": null, + "id": 949, + "name": "Issuer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 97, + "src": "8466:6:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_issuer_$92_storage_$dyn_storage", + "typeString": "struct Identity.issuer storage ref[] storage ref" + } + }, + "id": 950, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 926, - "name": "IssuerDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "8353:12:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", - "typeString": "mapping(address => struct Identity.issuer storage ref)" - } - }, - "id": 929, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 927, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "8366:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 928, - "isConstant": false, - "isLValue": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "8466:13:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 948, + "id": 951, + "nodeType": "Return", + "src": "8459:20:1" + } + ] + }, + "documentation": null, + "id": 953, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "totalIssuer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 945, + "nodeType": "ParameterList", + "parameters": [], + "src": "8419:2:1" + }, + "returnParameters": { + "id": 948, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 947, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 953, + "src": "8443:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 946, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8443:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "8442:6:1" + }, + "scope": 1006, + "src": "8399:88:1", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 964, + "nodeType": "Block", + "src": "8545:59:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 958, + "name": "IssuerDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 108, + "src": "8563:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", + "typeString": "mapping(address => struct Identity.issuer storage ref)" + } + }, + "id": 961, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 959, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "8576:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "8576:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8563:24:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_issuer_$92_storage", + "typeString": "struct Identity.issuer storage ref" + } + }, + "id": 962, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "ReqCount", + "nodeType": "MemberAccess", + "referencedDeclaration": 87, + "src": "8563:33:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 957, + "id": 963, + "nodeType": "Return", + "src": "8556:40:1" + } + ] + }, + "documentation": null, + "id": 965, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "totalRequest", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 954, + "nodeType": "ParameterList", + "parameters": [], + "src": "8516:2:1" + }, + "returnParameters": { + "id": 957, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 956, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 965, + "src": "8540:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 955, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8540:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "8539:6:1" + }, + "scope": 1006, + "src": "8495:109:1", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 995, + "nodeType": "Block", + "src": "8706:152:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 983, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 977, + "name": "_RqNo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 967, + "src": "8725:5:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 978, + "name": "IssuerDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 108, + "src": "8733:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", + "typeString": "mapping(address => struct Identity.issuer storage ref)" + } + }, + "id": 981, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 979, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "8746:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 980, + "isConstant": false, + "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "8366:10:1", + "src": "8746:10:1", "typeDescriptions": { "typeIdentifier": "t_address_payable", "typeString": "address payable" @@ -11983,3026 +12865,528 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8353:24:1", + "src": "8733:24:1", "typeDescriptions": { "typeIdentifier": "t_struct$_issuer_$92_storage", "typeString": "struct Identity.issuer storage ref" } }, - "id": 930, + "id": 982, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "Request", + "memberName": "ReqCount", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "8353:32:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", - "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" - } - }, - "id": 932, - "indexExpression": { - "argumentTypes": null, - "id": 931, - "name": "_ReqNo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 890, - "src": "8386:6:1", + "referencedDeclaration": 87, + "src": "8733:33:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8353:40:1", + "src": "8725:41:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", - "typeString": "struct Identity.verifyIdRequest storage ref" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "id": 933, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "Status", - "nodeType": "MemberAccess", - "referencedDeclaration": 67, - "src": "8353:47:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "30", - "id": 934, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8403:1:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "src": "8353:51:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 936, - "nodeType": "ExpressionStatement", - "src": "8353:51:1" - }, - { - "assignments": [ - 938 - ], - "declarations": [ - { - "constant": false, - "id": 938, - "name": "flag", - "nodeType": "VariableDeclaration", - "scope": 1030, - "src": "8417:9:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 937, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "8417:4:1", + { + "argumentTypes": null, + "hexValue": "5265717565737420646f6573206e6f74206578697374", + "id": 984, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8768:24:1", + "subdenomination": null, "typeDescriptions": { + "typeIdentifier": "t_stringliteral_b8043f8d751ffea18edb30c86e532c51bcf223623793dc609fc0f74124ac73f9", + "typeString": "literal_string \"Request does not exist\"" + }, + "value": "Request does not exist" + } + ], + "expression": { + "argumentTypes": [ + { "typeIdentifier": "t_bool", "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_b8043f8d751ffea18edb30c86e532c51bcf223623793dc609fc0f74124ac73f9", + "typeString": "literal_string \"Request does not exist\"" } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 940, - "initialValue": { - "argumentTypes": null, - "hexValue": "66616c7365", - "id": 939, + ], + "id": 976, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1024, + 1025 + ], + "referencedDeclaration": 1025, + "src": "8717:7:1", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 985, "isConstant": false, "isLValue": false, - "isPure": true, - "kind": "bool", + "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "8429:5:1", - "subdenomination": null, + "names": [], + "nodeType": "FunctionCall", + "src": "8717:76:1", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "false" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } }, - "nodeType": "VariableDeclarationStatement", - "src": "8417:17:1" + "id": 986, + "nodeType": "ExpressionStatement", + "src": "8717:76:1" }, { - "assignments": [ - 942 - ], - "declarations": [ - { - "constant": false, - "id": 942, - "name": "User", - "nodeType": "VariableDeclaration", - "scope": 1030, - "src": "8445:12:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 941, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "8445:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 951, - "initialValue": { + "expression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { + "expression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { + "id": 987, + "name": "IssuerDetail", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 108, + "src": "8811:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", + "typeString": "mapping(address => struct Identity.issuer storage ref)" + } + }, + "id": 990, + "indexExpression": { + "argumentTypes": null, + "expression": { "argumentTypes": null, - "id": 943, - "name": "IssuerDetail", + "id": 988, + "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "8460:12:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", - "typeString": "mapping(address => struct Identity.issuer storage ref)" - } - }, - "id": 946, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 944, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "8473:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 945, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "8473:10:1", + "referencedDeclaration": 1021, + "src": "8824:3:1", "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" + "typeIdentifier": "t_magic_message", + "typeString": "msg" } }, + "id": 989, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8460:24:1", + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "8824:10:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_issuer_$92_storage", - "typeString": "struct Identity.issuer storage ref" + "typeIdentifier": "t_address_payable", + "typeString": "address payable" } }, - "id": 947, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "Request", - "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "8460:32:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", - "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" - } - }, - "id": 949, - "indexExpression": { - "argumentTypes": null, - "id": 948, - "name": "_ReqNo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 890, - "src": "8493:6:1", + "nodeType": "IndexAccess", + "src": "8811:24:1", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_struct$_issuer_$92_storage", + "typeString": "struct Identity.issuer storage ref" } }, + "id": 991, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8460:40:1", + "memberName": "Request", + "nodeType": "MemberAccess", + "referencedDeclaration": 91, + "src": "8811:32:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", - "typeString": "struct Identity.verifyIdRequest storage ref" + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", + "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" + } + }, + "id": 993, + "indexExpression": { + "argumentTypes": null, + "id": 992, + "name": "_RqNo", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 967, + "src": "8844:5:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 950, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "Owner", - "nodeType": "MemberAccess", - "referencedDeclaration": 63, - "src": "8460:46:1", + "nodeType": "IndexAccess", + "src": "8811:39:1", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", + "typeString": "struct Identity.verifyIdRequest storage ref" } }, - "nodeType": "VariableDeclarationStatement", - "src": "8445:61:1" - }, - { - "body": { - "id": 1021, - "nodeType": "Block", - "src": "8568:380:1", - "statements": [ - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1003, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 985, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 967, - "name": "UserDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "8602:10:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } - }, - "id": 969, - "indexExpression": { - "argumentTypes": null, - "id": 968, - "name": "User", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 942, - "src": "8613:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8602:16:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" - } - }, - "id": 970, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Ids", - "nodeType": "MemberAccess", - "referencedDeclaration": 60, - "src": "8602:20:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", - "typeString": "mapping(uint256 => struct Identity.identity storage ref)" - } - }, - "id": 972, - "indexExpression": { - "argumentTypes": null, - "id": 971, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 953, - "src": "8623:1:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8602:23:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage", - "typeString": "struct Identity.identity storage ref" - } - }, - "id": 973, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Name", - "nodeType": "MemberAccess", - "referencedDeclaration": 37, - "src": "8602:28:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 966, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "8596:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 974, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8596:35:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - ], - "id": 965, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "8586:9:1", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 975, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8586:46:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 978, - "name": "IssuerDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "8652:12:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", - "typeString": "mapping(address => struct Identity.issuer storage ref)" - } - }, - "id": 981, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 979, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "8665:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 980, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "8665:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8652:24:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_issuer_$92_storage", - "typeString": "struct Identity.issuer storage ref" - } - }, - "id": 982, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "IssueId", - "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "8652:32:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 977, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "8646:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 983, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8646:39:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - ], - "id": 976, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "8636:9:1", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 984, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8636:50:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "8586:100:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - "id": 1002, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 988, - "name": "UserDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "8723:10:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } - }, - "id": 990, - "indexExpression": { - "argumentTypes": null, - "id": 989, - "name": "User", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 942, - "src": "8734:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8723:16:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" - } - }, - "id": 991, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Ids", - "nodeType": "MemberAccess", - "referencedDeclaration": 60, - "src": "8723:20:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", - "typeString": "mapping(uint256 => struct Identity.identity storage ref)" - } - }, - "id": 993, - "indexExpression": { - "argumentTypes": null, - "id": 992, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 953, - "src": "8744:1:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8723:23:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage", - "typeString": "struct Identity.identity storage ref" - } - }, - "id": 994, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "IssuerSignature", - "nodeType": "MemberAccess", - "referencedDeclaration": 47, - "src": "8723:39:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - ], - "id": 987, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "8717:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 995, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8717:46:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes storage pointer" - } - ], - "id": 986, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "8707:9:1", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 996, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8707:57:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "hexValue": "50656e64696e67", - "id": 999, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8784:9:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_4be840e351422c3b302abb79aa7db05560ead7e387e413320822a342fca3f54e", - "typeString": "literal_string \"Pending\"" - }, - "value": "Pending" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_stringliteral_4be840e351422c3b302abb79aa7db05560ead7e387e413320822a342fca3f54e", - "typeString": "literal_string \"Pending\"" - } - ], - "id": 998, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "8778:5:1", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 1000, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8778:16:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - ], - "id": 997, - "name": "keccak256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1099, - "src": "8768:9:1", - "typeDescriptions": { - "typeIdentifier": "t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$", - "typeString": "function (bytes memory) pure returns (bytes32)" - } - }, - "id": 1001, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8768:27:1", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - "src": "8707:88:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "8586:209:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 1020, - "nodeType": "IfStatement", - "src": "8583:354:1", - "trueBody": { - "id": 1019, - "nodeType": "Block", - "src": "8796:141:1", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 1012, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1004, - "name": "UserDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "8815:10:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } - }, - "id": 1006, - "indexExpression": { - "argumentTypes": null, - "id": 1005, - "name": "User", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 942, - "src": "8826:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8815:16:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" - } - }, - "id": 1007, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Ids", - "nodeType": "MemberAccess", - "referencedDeclaration": 60, - "src": "8815:20:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", - "typeString": "mapping(uint256 => struct Identity.identity storage ref)" - } - }, - "id": 1009, - "indexExpression": { - "argumentTypes": null, - "id": 1008, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 953, - "src": "8836:1:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8815:23:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage", - "typeString": "struct Identity.identity storage ref" - } - }, - "id": 1010, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "IssuerSignature", - "nodeType": "MemberAccess", - "referencedDeclaration": 47, - "src": "8815:39:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "52656a6563746564", - "id": 1011, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8857:10:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_1d6da6841dcfb6ef74e75eb3ebc56df589ad1a29d3f3e29120ea311982da63c9", - "typeString": "literal_string \"Rejected\"" - }, - "value": "Rejected" - }, - "src": "8815:52:1", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 1013, - "nodeType": "ExpressionStatement", - "src": "8815:52:1" - }, - { - "expression": { - "argumentTypes": null, - "id": 1016, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1014, - "name": "flag", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 938, - "src": "8886:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1015, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8893:4:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "8886:11:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1017, - "nodeType": "ExpressionStatement", - "src": "8886:11:1" - }, - { - "id": 1018, - "nodeType": "Break", - "src": "8916:5:1" - } - ] - } - } - ] - }, - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 961, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 956, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 953, - "src": "8534:1:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 957, - "name": "UserDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "8537:10:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } - }, - "id": 959, - "indexExpression": { - "argumentTypes": null, - "id": 958, - "name": "User", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 942, - "src": "8548:4:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "8537:16:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" - } - }, - "id": 960, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "IdCount", - "nodeType": "MemberAccess", - "referencedDeclaration": 56, - "src": "8537:24:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "8534:27:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 1022, - "initializationExpression": { - "assignments": [ - 953 - ], - "declarations": [ - { - "constant": false, - "id": 953, - "name": "i", - "nodeType": "VariableDeclaration", - "scope": 1022, - "src": "8523:6:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 952, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8523:4:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 955, - "initialValue": { - "argumentTypes": null, - "hexValue": "30", - "id": 954, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8530:1:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" - }, - "nodeType": "VariableDeclarationStatement", - "src": "8523:8:1" - }, - "loopExpression": { - "expression": { - "argumentTypes": null, - "id": 963, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "nodeType": "UnaryOperation", - "operator": "++", - "prefix": false, - "src": "8564:3:1", - "subExpression": { - "argumentTypes": null, - "id": 962, - "name": "i", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 953, - "src": "8564:1:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 964, - "nodeType": "ExpressionStatement", - "src": "8564:3:1" - }, - "nodeType": "ForStatement", - "src": "8519:429:1" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 1026, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 1024, - "name": "flag", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 938, - "src": "8966:4:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 1025, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8974:4:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "8966:12:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "55736572204964656e74697479204e6f7420466f756e64", - "id": 1027, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "8980:25:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_179851dcf74cd84bf02ee82ea38f04eba7d1ea987c1c4f01660b225766cc2617", - "typeString": "literal_string \"User Identity Not Found\"" - }, - "value": "User Identity Not Found" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_179851dcf74cd84bf02ee82ea38f04eba7d1ea987c1c4f01660b225766cc2617", - "typeString": "literal_string \"User Identity Not Found\"" - } - ], - "id": 1023, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "src": "8958:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1028, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "8958:48:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1029, - "nodeType": "ExpressionStatement", - "src": "8958:48:1" - } - ] - }, - "documentation": null, - "id": 1031, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 893, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "8115:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 894, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "8115:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "id": 895, - "modifierName": { - "argumentTypes": null, - "id": 892, - "name": "registered", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 145, - "src": "8104:10:1", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_address_$", - "typeString": "modifier (address)" - } - }, - "nodeType": "ModifierInvocation", - "src": "8104:22:1" - }, - { - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 897, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "8133:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 898, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "8133:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "id": 899, - "modifierName": { - "argumentTypes": null, - "id": 896, - "name": "issue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 161, - "src": "8127:5:1", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_address_$", - "typeString": "modifier (address)" - } - }, - "nodeType": "ModifierInvocation", - "src": "8127:17:1" - } - ], - "name": "RejectIdRequest", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 891, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 890, - "name": "_ReqNo", - "nodeType": "VariableDeclaration", - "scope": 1031, - "src": "8084:11:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 889, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "8084:4:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "8083:13:1" - }, - "returnParameters": { - "id": 900, - "nodeType": "ParameterList", - "parameters": [], - "src": "8144:0:1" - }, - "scope": 1090, - "src": "8059:955:1", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1057, - "nodeType": "Block", - "src": "9103:132:1", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1046, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 1041, - "name": "_IdNo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1033, - "src": "9122:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1042, - "name": "UserDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "9130:10:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } - }, - "id": 1044, - "indexExpression": { - "argumentTypes": null, - "id": 1043, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1035, - "src": "9141:7:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9130:19:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" - } - }, - "id": 1045, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "IdCount", - "nodeType": "MemberAccess", - "referencedDeclaration": 56, - "src": "9130:27:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9122:35:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "496420646f6573206e6f74206578697374", - "id": 1047, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9159:19:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_dc72b1dc30aa33a8681d6df0f0658802a75cf2c774536257767bbb66dff67d05", - "typeString": "literal_string \"Id does not exist\"" - }, - "value": "Id does not exist" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_dc72b1dc30aa33a8681d6df0f0658802a75cf2c774536257767bbb66dff67d05", - "typeString": "literal_string \"Id does not exist\"" - } - ], - "id": 1040, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "src": "9114:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1048, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9114:65:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1049, - "nodeType": "ExpressionStatement", - "src": "9114:65:1" - }, - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1050, - "name": "UserDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 104, - "src": "9197:10:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_user_$61_storage_$", - "typeString": "mapping(address => struct Identity.user storage ref)" - } - }, - "id": 1052, - "indexExpression": { - "argumentTypes": null, - "id": 1051, - "name": "account", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1035, - "src": "9208:7:1", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9197:19:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_user_$61_storage", - "typeString": "struct Identity.user storage ref" - } - }, - "id": 1053, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Ids", - "nodeType": "MemberAccess", - "referencedDeclaration": 60, - "src": "9197:23:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_identity_$48_storage_$", - "typeString": "mapping(uint256 => struct Identity.identity storage ref)" - } - }, - "id": 1055, - "indexExpression": { - "argumentTypes": null, - "id": 1054, - "name": "_IdNo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1033, - "src": "9221:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9197:30:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage", - "typeString": "struct Identity.identity storage ref" - } - }, - "functionReturnParameters": 1039, - "id": 1056, - "nodeType": "Return", - "src": "9190:37:1" - } - ] - }, - "documentation": null, - "id": 1058, - "implemented": true, - "kind": "function", - "modifiers": [], - "name": "getId", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1036, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1033, - "name": "_IdNo", - "nodeType": "VariableDeclaration", - "scope": 1058, - "src": "9037:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1032, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9037:4:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1035, - "name": "account", - "nodeType": "VariableDeclaration", - "scope": 1058, - "src": "9049:15:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1034, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "9049:7:1", - "stateMutability": "nonpayable", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "9036:29:1" - }, - "returnParameters": { - "id": 1039, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1038, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1058, - "src": "9087:15:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_memory_ptr", - "typeString": "struct Identity.identity" - }, - "typeName": { - "contractScope": null, - "id": 1037, - "name": "identity", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 48, - "src": "9087:8:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_identity_$48_storage_ptr", - "typeString": "struct Identity.identity" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "9086:17:1" - }, - "scope": 1090, - "src": "9022:213:1", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 1088, - "nodeType": "Block", - "src": "9337:152:1", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 1076, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 1070, - "name": "_RqNo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1060, - "src": "9356:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1071, - "name": "IssuerDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "9364:12:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", - "typeString": "mapping(address => struct Identity.issuer storage ref)" - } - }, - "id": 1074, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1072, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "9377:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1073, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "9377:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9364:24:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_issuer_$92_storage", - "typeString": "struct Identity.issuer storage ref" - } - }, - "id": 1075, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "ReqCount", - "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "9364:33:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "9356:41:1", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - { - "argumentTypes": null, - "hexValue": "5265717565737420646f6573206e6f74206578697374", - "id": 1077, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "9399:24:1", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_b8043f8d751ffea18edb30c86e532c51bcf223623793dc609fc0f74124ac73f9", - "typeString": "literal_string \"Request does not exist\"" - }, - "value": "Request does not exist" - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_b8043f8d751ffea18edb30c86e532c51bcf223623793dc609fc0f74124ac73f9", - "typeString": "literal_string \"Request does not exist\"" - } - ], - "id": 1069, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "src": "9348:7:1", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" - } - }, - "id": 1078, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "9348:76:1", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 1079, - "nodeType": "ExpressionStatement", - "src": "9348:76:1" - }, - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1080, - "name": "IssuerDetail", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "9442:12:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_issuer_$92_storage_$", - "typeString": "mapping(address => struct Identity.issuer storage ref)" - } - }, - "id": 1083, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1081, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "9455:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1082, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "9455:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9442:24:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_issuer_$92_storage", - "typeString": "struct Identity.issuer storage ref" - } - }, - "id": 1084, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "memberName": "Request", - "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "9442:32:1", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_verifyIdRequest_$68_storage_$", - "typeString": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" - } - }, - "id": 1086, - "indexExpression": { - "argumentTypes": null, - "id": 1085, - "name": "_RqNo", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1060, - "src": "9475:5:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "9442:39:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage", - "typeString": "struct Identity.verifyIdRequest storage ref" - } - }, - "functionReturnParameters": 1068, - "id": 1087, - "nodeType": "Return", - "src": "9435:46:1" - } - ] - }, - "documentation": null, - "id": 1089, - "implemented": true, - "kind": "function", - "modifiers": [ - { - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 1063, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1105, - "src": "9288:3:1", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 1064, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "9288:10:1", - "typeDescriptions": { - "typeIdentifier": "t_address_payable", - "typeString": "address payable" - } - } - ], - "id": 1065, - "modifierName": { - "argumentTypes": null, - "id": 1062, - "name": "issue", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 161, - "src": "9282:5:1", - "typeDescriptions": { - "typeIdentifier": "t_modifier$_t_address_$", - "typeString": "modifier (address)" - } - }, - "nodeType": "ModifierInvocation", - "src": "9282:17:1" - } - ], - "name": "getRequest", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1061, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1060, - "name": "_RqNo", - "nodeType": "VariableDeclaration", - "scope": 1089, - "src": "9263:10:1", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 1059, - "name": "uint", - "nodeType": "ElementaryTypeName", - "src": "9263:4:1", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "9262:12:1" - }, - "returnParameters": { - "id": 1068, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1067, - "name": "", - "nodeType": "VariableDeclaration", - "scope": 1089, - "src": "9314:22:1", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_memory_ptr", - "typeString": "struct Identity.verifyIdRequest" - }, - "typeName": { - "contractScope": null, - "id": 1066, - "name": "verifyIdRequest", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 68, - "src": "9314:15:1", - "typeDescriptions": { - "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage_ptr", - "typeString": "struct Identity.verifyIdRequest" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "9313:24:1" - }, - "scope": 1090, - "src": "9243:246:1", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - } - ], - "scope": 1091, - "src": "102:9390:1" - } - ], - "src": "33:9461:1" - }, - "legacyAST": { - "attributes": { - "absolutePath": "/C/Users/Aman Gupta/Desktop/Cstuff/5th Sem/project/ethereum-backend/contracts/identity.sol", - "exportedSymbols": { - "Identity": [ - 1090 - ] - } - }, - "children": [ - { - "attributes": { - "literals": [ - "experimental", - "ABIEncoderV2" - ] - }, - "id": 34, - "name": "PragmaDirective", - "src": "33:33:1" - }, - { - "attributes": { - "literals": [ - "solidity", - ">=", - "0.4", - ".22", - "<", - "0.9", - ".0" - ] - }, - "id": 35, - "name": "PragmaDirective", - "src": "68:32:1" - }, - { - "attributes": { - "baseContracts": [ - null - ], - "contractDependencies": [ - null - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "linearizedBaseContracts": [ - 1090 - ], - "name": "Identity", - "scope": 1091 - }, - "children": [ - { - "attributes": { - "canonicalName": "Identity.identity", - "name": "identity", - "scope": 1090, - "visibility": "public" - }, - "children": [ - { - "attributes": { - "constant": false, - "name": "Name", - "scope": 48, - "stateVariable": false, - "storageLocation": "default", - "type": "string", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 36, - "name": "ElementaryTypeName", - "src": "232:6:1" - } - ], - "id": 37, - "name": "VariableDeclaration", - "src": "232:11:1" - }, - { - "attributes": { - "constant": false, - "name": "Hash", - "scope": 48, - "stateVariable": false, - "storageLocation": "default", - "type": "string", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 38, - "name": "ElementaryTypeName", - "src": "254:6:1" - } - ], - "id": 39, - "name": "VariableDeclaration", - "src": "254:11:1" - }, - { - "attributes": { - "constant": false, - "name": "Owner", - "scope": 48, - "stateVariable": false, - "storageLocation": "default", - "type": "address", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" - }, - "id": 40, - "name": "ElementaryTypeName", - "src": "276:7:1" - } - ], - "id": 41, - "name": "VariableDeclaration", - "src": "276:13:1" - }, - { - "attributes": { - "constant": false, - "name": "Issuer", - "scope": 48, - "stateVariable": false, - "storageLocation": "default", - "type": "address", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" - }, - "id": 42, - "name": "ElementaryTypeName", - "src": "300:7:1" - } - ], - "id": 43, - "name": "VariableDeclaration", - "src": "300:14:1" - }, - { - "attributes": { - "constant": false, - "name": "OwnerSignature", - "scope": 48, - "stateVariable": false, - "storageLocation": "default", - "type": "string", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 44, - "name": "ElementaryTypeName", - "src": "325:6:1" - } - ], - "id": 45, - "name": "VariableDeclaration", - "src": "325:21:1" - }, - { - "attributes": { - "constant": false, - "name": "IssuerSignature", - "scope": 48, - "stateVariable": false, - "storageLocation": "default", - "type": "string", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 46, - "name": "ElementaryTypeName", - "src": "357:6:1" - } - ], - "id": 47, - "name": "VariableDeclaration", - "src": "357:22:1" - } - ], - "id": 48, - "name": "StructDefinition", - "src": "205:182:1" - }, - { - "attributes": { - "canonicalName": "Identity.user", - "name": "user", - "scope": 1090, - "visibility": "public" - }, - "children": [ - { - "attributes": { - "constant": false, - "name": "UserAddress", - "scope": 61, - "stateVariable": false, - "storageLocation": "default", - "type": "address", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" - }, - "id": 49, - "name": "ElementaryTypeName", - "src": "440:7:1" - } - ], - "id": 50, - "name": "VariableDeclaration", - "src": "440:19:1" - }, - { - "attributes": { - "constant": false, - "name": "PublicKey", - "scope": 61, - "stateVariable": false, - "storageLocation": "default", - "type": "string", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 51, - "name": "ElementaryTypeName", - "src": "470:6:1" - } - ], - "id": 52, - "name": "VariableDeclaration", - "src": "470:16:1" - }, - { - "attributes": { - "constant": false, - "name": "Registered", - "scope": 61, - "stateVariable": false, - "storageLocation": "default", - "type": "bool", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "bool", - "type": "bool" - }, - "id": 53, - "name": "ElementaryTypeName", - "src": "497:4:1" - } - ], - "id": 54, - "name": "VariableDeclaration", - "src": "497:15:1" - }, - { - "attributes": { - "constant": false, - "name": "IdCount", - "scope": 61, - "stateVariable": false, - "storageLocation": "default", - "type": "uint256", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "uint", - "type": "uint256" - }, - "id": 55, - "name": "ElementaryTypeName", - "src": "523:4:1" - } - ], - "id": 56, - "name": "VariableDeclaration", - "src": "523:12:1" - }, - { - "attributes": { - "constant": false, - "name": "Ids", - "scope": 61, - "stateVariable": false, - "storageLocation": "default", - "type": "mapping(uint256 => struct Identity.identity)", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "type": "mapping(uint256 => struct Identity.identity)" - }, - "children": [ - { - "attributes": { - "name": "uint", - "type": "uint256" - }, - "id": 57, - "name": "ElementaryTypeName", - "src": "554:4:1" - }, - { - "attributes": { - "contractScope": null, - "name": "identity", - "referencedDeclaration": 48, - "type": "struct Identity.identity" - }, - "id": 58, - "name": "UserDefinedTypeName", - "src": "562:8:1" - } - ], - "id": 59, - "name": "Mapping", - "src": "546:25:1" - } - ], - "id": 60, - "name": "VariableDeclaration", - "src": "546:29:1" - } - ], - "id": 61, - "name": "StructDefinition", - "src": "417:166:1" - }, - { - "attributes": { - "canonicalName": "Identity.verifyIdRequest", - "name": "verifyIdRequest", - "scope": 1090, - "visibility": "public" + "functionReturnParameters": 975, + "id": 994, + "nodeType": "Return", + "src": "8804:46:1" + } + ] }, - "children": [ - { - "attributes": { - "constant": false, - "name": "Owner", - "scope": 68, - "stateVariable": false, - "storageLocation": "default", - "type": "address", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" - }, - "id": 62, - "name": "ElementaryTypeName", - "src": "650:7:1" - } - ], - "id": 63, - "name": "VariableDeclaration", - "src": "650:13:1" - }, - { - "attributes": { - "constant": false, - "name": "Hash", - "scope": 68, - "stateVariable": false, - "storageLocation": "default", - "type": "string", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 64, - "name": "ElementaryTypeName", - "src": "674:6:1" - } - ], - "id": 65, - "name": "VariableDeclaration", - "src": "674:11:1" - }, + "documentation": null, + "id": 996, + "implemented": true, + "kind": "function", + "modifiers": [ { - "attributes": { - "constant": false, - "name": "Status", - "scope": 68, - "stateVariable": false, - "storageLocation": "default", - "type": "uint256", - "value": null, - "visibility": "internal" - }, - "children": [ + "arguments": [ { - "attributes": { - "name": "uint", - "type": "uint256" + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 970, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1021, + "src": "8650:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } }, - "id": 66, - "name": "ElementaryTypeName", - "src": "696:4:1" + "id": 971, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "8650:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address_payable", + "typeString": "address payable" + } } ], - "id": 67, - "name": "VariableDeclaration", - "src": "696:11:1" - } - ], - "id": 68, - "name": "StructDefinition", - "src": "616:99:1" - }, - { - "attributes": { - "canonicalName": "Identity.issuerVerificationRequest", - "name": "issuerVerificationRequest", - "scope": 1090, - "visibility": "public" - }, - "children": [ - { - "attributes": { - "constant": false, - "name": "Owner", - "scope": 77, - "stateVariable": false, - "storageLocation": "default", - "type": "address", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" - }, - "id": 69, - "name": "ElementaryTypeName", - "src": "802:7:1" + "id": 972, + "modifierName": { + "argumentTypes": null, + "id": 969, + "name": "issue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 161, + "src": "8644:5:1", + "typeDescriptions": { + "typeIdentifier": "t_modifier$_t_address_$", + "typeString": "modifier (address)" } - ], - "id": 70, - "name": "VariableDeclaration", - "src": "802:13:1" - }, - { - "attributes": { + }, + "nodeType": "ModifierInvocation", + "src": "8644:17:1" + } + ], + "name": "getRequest", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 968, + "nodeType": "ParameterList", + "parameters": [ + { "constant": false, - "name": "Status", - "scope": 77, + "id": 967, + "name": "_RqNo", + "nodeType": "VariableDeclaration", + "scope": 996, + "src": "8632:10:1", "stateVariable": false, "storageLocation": "default", - "type": "uint256", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 966, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8632:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, "value": null, "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "uint", - "type": "uint256" - }, - "id": 71, - "name": "ElementaryTypeName", - "src": "826:4:1" - } - ], - "id": 72, - "name": "VariableDeclaration", - "src": "826:11:1" - }, - { - "attributes": { + } + ], + "src": "8631:12:1" + }, + "returnParameters": { + "id": 975, + "nodeType": "ParameterList", + "parameters": [ + { "constant": false, - "name": "Id", - "scope": 77, + "id": 974, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 996, + "src": "8683:22:1", "stateVariable": false, - "storageLocation": "default", - "type": "string", + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_verifyIdRequest_$68_memory_ptr", + "typeString": "struct Identity.verifyIdRequest" + }, + "typeName": { + "contractScope": null, + "id": 973, + "name": "verifyIdRequest", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 68, + "src": "8683:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_verifyIdRequest_$68_storage_ptr", + "typeString": "struct Identity.verifyIdRequest" + } + }, "value": null, "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" + } + ], + "src": "8682:24:1" + }, + "scope": 1006, + "src": "8612:246:1", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1004, + "nodeType": "Block", + "src": "8934:58:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 1001, + "name": "IssuerVerificationRequest", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 100, + "src": "8952:25:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_issuerVerificationRequest_$77_storage_$dyn_storage", + "typeString": "struct Identity.issuerVerificationRequest storage ref[] storage ref" + } }, - "id": 73, - "name": "ElementaryTypeName", - "src": "888:6:1" - } - ], - "id": 74, - "name": "VariableDeclaration", - "src": "888:9:1" - }, - { - "attributes": { + "id": 1002, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberName": "length", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "8952:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 1000, + "id": 1003, + "nodeType": "Return", + "src": "8945:39:1" + } + ] + }, + "documentation": null, + "id": 1005, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "issuerVerificationRequestCount", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 997, + "nodeType": "ParameterList", + "parameters": [], + "src": "8905:2:1" + }, + "returnParameters": { + "id": 1000, + "nodeType": "ParameterList", + "parameters": [ + { "constant": false, - "name": "Desc", - "scope": 77, + "id": 999, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 1005, + "src": "8929:4:1", "stateVariable": false, "storageLocation": "default", - "type": "string", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 998, + "name": "uint", + "nodeType": "ElementaryTypeName", + "src": "8929:4:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, "value": null, "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 75, - "name": "ElementaryTypeName", - "src": "908:6:1" - } - ], - "id": 76, - "name": "VariableDeclaration", - "src": "908:11:1" - } - ], - "id": 77, - "name": "StructDefinition", - "src": "758:169:1" - }, + } + ], + "src": "8928:6:1" + }, + "scope": 1006, + "src": "8866:126:1", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1007, + "src": "102:8893:1" + } + ], + "src": "33:8964:1" + }, + "legacyAST": { + "attributes": { + "absolutePath": "/C/Users/Aman Gupta/Desktop/Cstuff/5th Sem/project/DigiID/ethereum/contracts/identity.sol", + "exportedSymbols": { + "Identity": [ + 1006 + ] + } + }, + "children": [ + { + "attributes": { + "literals": [ + "experimental", + "ABIEncoderV2" + ] + }, + "id": 34, + "name": "PragmaDirective", + "src": "33:33:1" + }, + { + "attributes": { + "literals": [ + "solidity", + ">=", + "0.4", + ".22", + "<", + "0.9", + ".0" + ] + }, + "id": 35, + "name": "PragmaDirective", + "src": "68:32:1" + }, + { + "attributes": { + "baseContracts": [ + null + ], + "contractDependencies": [ + null + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "linearizedBaseContracts": [ + 1006 + ], + "name": "Identity", + "scope": 1007 + }, + "children": [ { "attributes": { - "canonicalName": "Identity.issuer", - "name": "issuer", - "scope": 1090, + "canonicalName": "Identity.identity", + "name": "identity", + "scope": 1006, "visibility": "public" }, "children": [ { "attributes": { - "constant": false, - "name": "IssuerAddress", - "scope": 92, + "constant": false, + "name": "Name", + "scope": 48, "stateVariable": false, "storageLocation": "default", - "type": "address", + "type": "string", "value": null, "visibility": "internal" }, "children": [ { "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" + "name": "string", + "type": "string" }, - "id": 78, + "id": 36, "name": "ElementaryTypeName", - "src": "984:7:1" + "src": "232:6:1" } ], - "id": 79, + "id": 37, "name": "VariableDeclaration", - "src": "984:21:1" + "src": "232:11:1" }, { "attributes": { "constant": false, - "name": "Desc", - "scope": 92, + "name": "Hash", + "scope": 48, "stateVariable": false, "storageLocation": "default", "type": "string", @@ -15015,1585 +13399,931 @@ "name": "string", "type": "string" }, - "id": 80, + "id": 38, "name": "ElementaryTypeName", - "src": "1016:6:1" + "src": "254:6:1" } ], - "id": 81, + "id": 39, "name": "VariableDeclaration", - "src": "1016:11:1" + "src": "254:11:1" }, { "attributes": { "constant": false, - "name": "Status", - "scope": 92, + "name": "Owner", + "scope": 48, "stateVariable": false, "storageLocation": "default", - "type": "uint256", + "type": "address", "value": null, "visibility": "internal" }, "children": [ { "attributes": { - "name": "uint", - "type": "uint256" + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "id": 82, + "id": 40, "name": "ElementaryTypeName", - "src": "1038:4:1" + "src": "276:7:1" } ], - "id": 83, + "id": 41, "name": "VariableDeclaration", - "src": "1038:11:1" + "src": "276:13:1" }, { "attributes": { "constant": false, - "name": "IssueId", - "scope": 92, + "name": "Issuer", + "scope": 48, "stateVariable": false, "storageLocation": "default", - "type": "string", + "type": "address", "value": null, "visibility": "internal" }, "children": [ { "attributes": { - "name": "string", - "type": "string" + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "id": 84, + "id": 42, "name": "ElementaryTypeName", - "src": "1103:6:1" + "src": "300:7:1" } ], - "id": 85, + "id": 43, "name": "VariableDeclaration", - "src": "1103:14:1" + "src": "300:14:1" }, { "attributes": { "constant": false, - "name": "ReqCount", - "scope": 92, + "name": "OwnerSignature", + "scope": 48, "stateVariable": false, "storageLocation": "default", - "type": "uint256", + "type": "string", "value": null, "visibility": "internal" }, "children": [ { "attributes": { - "name": "uint", - "type": "uint256" + "name": "string", + "type": "string" }, - "id": 86, + "id": 44, "name": "ElementaryTypeName", - "src": "1128:4:1" + "src": "325:6:1" } ], - "id": 87, + "id": 45, "name": "VariableDeclaration", - "src": "1128:13:1" + "src": "325:21:1" }, { "attributes": { "constant": false, - "name": "Request", - "scope": 92, + "name": "IssuerSignature", + "scope": 48, "stateVariable": false, "storageLocation": "default", - "type": "mapping(uint256 => struct Identity.verifyIdRequest)", + "type": "string", "value": null, "visibility": "internal" }, "children": [ { "attributes": { - "type": "mapping(uint256 => struct Identity.verifyIdRequest)" + "name": "string", + "type": "string" }, - "children": [ - { - "attributes": { - "name": "uint", - "type": "uint256" - }, - "id": 88, - "name": "ElementaryTypeName", - "src": "1160:4:1" - }, - { - "attributes": { - "contractScope": null, - "name": "verifyIdRequest", - "referencedDeclaration": 68, - "type": "struct Identity.verifyIdRequest" - }, - "id": 89, - "name": "UserDefinedTypeName", - "src": "1168:15:1" - } - ], - "id": 90, - "name": "Mapping", - "src": "1152:32:1" + "id": 46, + "name": "ElementaryTypeName", + "src": "357:6:1" } ], - "id": 91, + "id": 47, "name": "VariableDeclaration", - "src": "1152:40:1" + "src": "357:22:1" } ], - "id": 92, + "id": 48, "name": "StructDefinition", - "src": "959:241:1" - }, - { - "attributes": { - "constant": false, - "name": "Owner", - "scope": 1090, - "stateVariable": true, - "storageLocation": "default", - "type": "address", - "value": null, - "visibility": "public" - }, - "children": [ - { - "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" - }, - "id": 93, - "name": "ElementaryTypeName", - "src": "1260:7:1" - } - ], - "id": 94, - "name": "VariableDeclaration", - "src": "1260:20:1" - }, - { - "attributes": { - "constant": false, - "name": "Issuer", - "scope": 1090, - "stateVariable": true, - "storageLocation": "default", - "type": "struct Identity.issuer[]", - "value": null, - "visibility": "public" - }, - "children": [ - { - "attributes": { - "length": null, - "type": "struct Identity.issuer[]" - }, - "children": [ - { - "attributes": { - "contractScope": null, - "name": "issuer", - "referencedDeclaration": 92, - "type": "struct Identity.issuer" - }, - "id": 95, - "name": "UserDefinedTypeName", - "src": "1287:6:1" - } - ], - "id": 96, - "name": "ArrayTypeName", - "src": "1287:8:1" - } - ], - "id": 97, - "name": "VariableDeclaration", - "src": "1287:22:1" + "src": "205:182:1" }, { "attributes": { - "constant": false, - "name": "IssuerVerificationRequest", - "scope": 1090, - "stateVariable": true, - "storageLocation": "default", - "type": "struct Identity.issuerVerificationRequest[]", - "value": null, + "canonicalName": "Identity.user", + "name": "user", + "scope": 1006, "visibility": "public" }, "children": [ { "attributes": { - "length": null, - "type": "struct Identity.issuerVerificationRequest[]" + "constant": false, + "name": "UserAddress", + "scope": 61, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" }, "children": [ { "attributes": { - "contractScope": null, - "name": "issuerVerificationRequest", - "referencedDeclaration": 77, - "type": "struct Identity.issuerVerificationRequest" + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "id": 98, - "name": "UserDefinedTypeName", - "src": "1316:25:1" + "id": 49, + "name": "ElementaryTypeName", + "src": "440:7:1" } ], - "id": 99, - "name": "ArrayTypeName", - "src": "1316:27:1" - } - ], - "id": 100, - "name": "VariableDeclaration", - "src": "1316:60:1" - }, - { - "attributes": { - "constant": false, - "name": "UserDetail", - "scope": 1090, - "stateVariable": true, - "storageLocation": "default", - "type": "mapping(address => struct Identity.user)", - "value": null, - "visibility": "public" - }, - "children": [ + "id": 50, + "name": "VariableDeclaration", + "src": "440:19:1" + }, { "attributes": { - "type": "mapping(address => struct Identity.user)" + "constant": false, + "name": "PublicKey", + "scope": 61, + "stateVariable": false, + "storageLocation": "default", + "type": "string", + "value": null, + "visibility": "internal" }, "children": [ { "attributes": { - "name": "address", - "type": "address" + "name": "string", + "type": "string" }, - "id": 101, + "id": 51, "name": "ElementaryTypeName", - "src": "1391:7:1" - }, + "src": "470:6:1" + } + ], + "id": 52, + "name": "VariableDeclaration", + "src": "470:16:1" + }, + { + "attributes": { + "constant": false, + "name": "Registered", + "scope": 61, + "stateVariable": false, + "storageLocation": "default", + "type": "bool", + "value": null, + "visibility": "internal" + }, + "children": [ { "attributes": { - "contractScope": null, - "name": "user", - "referencedDeclaration": 61, - "type": "struct Identity.user" + "name": "bool", + "type": "bool" }, - "id": 102, - "name": "UserDefinedTypeName", - "src": "1402:4:1" + "id": 53, + "name": "ElementaryTypeName", + "src": "497:4:1" } ], - "id": 103, - "name": "Mapping", - "src": "1383:24:1" - } - ], - "id": 104, - "name": "VariableDeclaration", - "src": "1383:42:1" - }, - { - "attributes": { - "constant": false, - "name": "IssuerDetail", - "scope": 1090, - "stateVariable": true, - "storageLocation": "default", - "type": "mapping(address => struct Identity.issuer)", - "value": null, - "visibility": "public" - }, - "children": [ + "id": 54, + "name": "VariableDeclaration", + "src": "497:15:1" + }, { "attributes": { - "type": "mapping(address => struct Identity.issuer)" + "constant": false, + "name": "IdCount", + "scope": 61, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" }, "children": [ { "attributes": { - "name": "address", - "type": "address" + "name": "uint", + "type": "uint256" }, - "id": 105, + "id": 55, "name": "ElementaryTypeName", - "src": "1440:7:1" - }, + "src": "523:4:1" + } + ], + "id": 56, + "name": "VariableDeclaration", + "src": "523:12:1" + }, + { + "attributes": { + "constant": false, + "name": "Ids", + "scope": 61, + "stateVariable": false, + "storageLocation": "default", + "type": "mapping(uint256 => struct Identity.identity)", + "value": null, + "visibility": "internal" + }, + "children": [ { "attributes": { - "contractScope": null, - "name": "issuer", - "referencedDeclaration": 92, - "type": "struct Identity.issuer" + "type": "mapping(uint256 => struct Identity.identity)" }, - "id": 106, - "name": "UserDefinedTypeName", - "src": "1451:6:1" + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 57, + "name": "ElementaryTypeName", + "src": "554:4:1" + }, + { + "attributes": { + "contractScope": null, + "name": "identity", + "referencedDeclaration": 48, + "type": "struct Identity.identity" + }, + "id": 58, + "name": "UserDefinedTypeName", + "src": "562:8:1" + } + ], + "id": 59, + "name": "Mapping", + "src": "546:25:1" } ], - "id": 107, - "name": "Mapping", - "src": "1432:26:1" + "id": 60, + "name": "VariableDeclaration", + "src": "546:29:1" } ], - "id": 108, - "name": "VariableDeclaration", - "src": "1432:46:1" + "id": 61, + "name": "StructDefinition", + "src": "417:166:1" }, { "attributes": { - "documentation": "*************Constructor**************", - "implemented": true, - "isConstructor": true, - "kind": "constructor", - "modifiers": [ - null - ], - "name": "", - "scope": 1090, - "stateMutability": "nonpayable", - "superFunction": null, + "canonicalName": "Identity.verifyIdRequest", + "name": "verifyIdRequest", + "scope": 1006, "visibility": "public" }, "children": [ { "attributes": { - "parameters": [ - null - ] - }, - "children": [], - "id": 109, - "name": "ParameterList", - "src": "1606:2:1" - }, - { - "attributes": { - "parameters": [ - null - ] + "constant": false, + "name": "Owner", + "scope": 68, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" }, - "children": [], - "id": 110, - "name": "ParameterList", - "src": "1616:0:1" - }, - { "children": [ { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "=", - "type": "address" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 94, - "type": "address", - "value": "Owner" - }, - "id": 111, - "name": "Identifier", - "src": "1627:5:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 112, - "name": "Identifier", - "src": "1635:3:1" - } - ], - "id": 113, - "name": "MemberAccess", - "src": "1635:10:1" - } - ], - "id": 114, - "name": "Assignment", - "src": "1627:18:1" - } - ], - "id": 115, - "name": "ExpressionStatement", - "src": "1627:18:1" + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 62, + "name": "ElementaryTypeName", + "src": "650:7:1" } ], - "id": 116, - "name": "Block", - "src": "1616:37:1" - } - ], - "id": 117, - "name": "FunctionDefinition", - "src": "1595:58:1" - }, - { - "attributes": { - "documentation": "*************Modifiers**************", - "name": "restricted", - "visibility": "internal" - }, - "children": [ + "id": 63, + "name": "VariableDeclaration", + "src": "650:13:1" + }, { "attributes": { - "parameters": [ - null - ] + "constant": false, + "name": "Hash", + "scope": 68, + "stateVariable": false, + "storageLocation": "default", + "type": "string", + "value": null, + "visibility": "internal" }, - "children": [], - "id": 118, - "name": "ParameterList", - "src": "1760:2:1" + "children": [ + { + "attributes": { + "name": "string", + "type": "string" + }, + "id": 64, + "name": "ElementaryTypeName", + "src": "674:6:1" + } + ], + "id": 65, + "name": "VariableDeclaration", + "src": "674:11:1" }, { + "attributes": { + "constant": false, + "name": "Status", + "scope": 68, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, "children": [ { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "isStructConstructorCall": false, - "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false - }, - "children": [ - { - "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_593fd4f5418ae095969b093812245f49eb950b9775e5afd767614f342e26d4f2", - "typeString": "literal_string \"Not Authorized\"" - } - ], - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" - }, - "id": 119, - "name": "Identifier", - "src": "1774:7:1" - }, - { - "attributes": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "==", - "type": "bool" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 120, - "name": "Identifier", - "src": "1782:3:1" - } - ], - "id": 121, - "name": "MemberAccess", - "src": "1782:10:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 94, - "type": "address", - "value": "Owner" - }, - "id": 122, - "name": "Identifier", - "src": "1796:5:1" - } - ], - "id": 123, - "name": "BinaryOperation", - "src": "1782:19:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "4e6f7420417574686f72697a6564", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"Not Authorized\"", - "value": "Not Authorized" - }, - "id": 124, - "name": "Literal", - "src": "1802:16:1" - } - ], - "id": 125, - "name": "FunctionCall", - "src": "1774:45:1" - } - ], - "id": 126, - "name": "ExpressionStatement", - "src": "1774:45:1" - }, - { - "id": 127, - "name": "PlaceholderStatement", - "src": "1830:1:1" + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 66, + "name": "ElementaryTypeName", + "src": "696:4:1" } ], - "id": 128, - "name": "Block", - "src": "1763:76:1" + "id": 67, + "name": "VariableDeclaration", + "src": "696:11:1" } ], - "id": 129, - "name": "ModifierDefinition", - "src": "1741:98:1" + "id": 68, + "name": "StructDefinition", + "src": "616:99:1" }, { "attributes": { - "documentation": null, - "name": "registered", - "visibility": "internal" + "canonicalName": "Identity.issuerVerificationRequest", + "name": "issuerVerificationRequest", + "scope": 1006, + "visibility": "public" }, "children": [ { + "attributes": { + "constant": false, + "name": "Owner", + "scope": 77, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 69, + "name": "ElementaryTypeName", + "src": "802:7:1" + } + ], + "id": 70, + "name": "VariableDeclaration", + "src": "802:13:1" + }, + { + "attributes": { + "constant": false, + "name": "Status", + "scope": 77, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, "children": [ { "attributes": { - "constant": false, - "name": "account", - "scope": 145, - "stateVariable": false, - "storageLocation": "default", - "type": "address", - "value": null, - "visibility": "internal" + "name": "uint", + "type": "uint256" }, - "children": [ - { - "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" - }, - "id": 130, - "name": "ElementaryTypeName", - "src": "1902:7:1" - } - ], - "id": 131, - "name": "VariableDeclaration", - "src": "1902:15:1" + "id": 71, + "name": "ElementaryTypeName", + "src": "826:4:1" } ], - "id": 132, - "name": "ParameterList", - "src": "1901:17:1" + "id": 72, + "name": "VariableDeclaration", + "src": "826:11:1" }, { + "attributes": { + "constant": false, + "name": "Id", + "scope": 77, + "stateVariable": false, + "storageLocation": "default", + "type": "string", + "value": null, + "visibility": "internal" + }, "children": [ { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "isStructConstructorCall": false, - "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false - }, - "children": [ - { - "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_17ab8566b9a02aa98ac972628373d44c8d8811ca11748676d6381ad946c9ae35", - "typeString": "literal_string \"This Account is not Registered\"" - } - ], - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" - }, - "id": 133, - "name": "Identifier", - "src": "1930:7:1" - }, - { - "attributes": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "==", - "type": "bool" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "member_name": "Registered", - "referencedDeclaration": 54, - "type": "bool" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.user storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 104, - "type": "mapping(address => struct Identity.user storage ref)", - "value": "UserDetail" - }, - "id": 134, - "name": "Identifier", - "src": "1938:10:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 131, - "type": "address", - "value": "account" - }, - "id": 135, - "name": "Identifier", - "src": "1949:7:1" - } - ], - "id": 136, - "name": "IndexAccess", - "src": "1938:19:1" - } - ], - "id": 137, - "name": "MemberAccess", - "src": "1938:30:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "74727565", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "bool", - "type": "bool", - "value": "true" - }, - "id": 138, - "name": "Literal", - "src": "1972:4:1" - } - ], - "id": 139, - "name": "BinaryOperation", - "src": "1938:38:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "54686973204163636f756e74206973206e6f742052656769737465726564", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"This Account is not Registered\"", - "value": "This Account is not Registered" - }, - "id": 140, - "name": "Literal", - "src": "1977:32:1" - } - ], - "id": 141, - "name": "FunctionCall", - "src": "1930:80:1" - } - ], - "id": 142, - "name": "ExpressionStatement", - "src": "1930:80:1" - }, + "attributes": { + "name": "string", + "type": "string" + }, + "id": 73, + "name": "ElementaryTypeName", + "src": "888:6:1" + } + ], + "id": 74, + "name": "VariableDeclaration", + "src": "888:9:1" + }, + { + "attributes": { + "constant": false, + "name": "Desc", + "scope": 77, + "stateVariable": false, + "storageLocation": "default", + "type": "string", + "value": null, + "visibility": "internal" + }, + "children": [ { - "id": 143, - "name": "PlaceholderStatement", - "src": "2021:1:1" + "attributes": { + "name": "string", + "type": "string" + }, + "id": 75, + "name": "ElementaryTypeName", + "src": "908:6:1" } ], - "id": 144, - "name": "Block", - "src": "1919:111:1" + "id": 76, + "name": "VariableDeclaration", + "src": "908:11:1" } ], - "id": 145, - "name": "ModifierDefinition", - "src": "1882:148:1" + "id": 77, + "name": "StructDefinition", + "src": "758:169:1" }, { "attributes": { - "documentation": null, - "name": "issue", - "visibility": "internal" + "canonicalName": "Identity.issuer", + "name": "issuer", + "scope": 1006, + "visibility": "public" }, "children": [ { + "attributes": { + "constant": false, + "name": "IssuerAddress", + "scope": 92, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, "children": [ { "attributes": { - "constant": false, - "name": "account", - "scope": 161, - "stateVariable": false, - "storageLocation": "default", - "type": "address", - "value": null, - "visibility": "internal" + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "children": [ - { - "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" - }, - "id": 146, - "name": "ElementaryTypeName", - "src": "2051:7:1" - } - ], - "id": 147, - "name": "VariableDeclaration", - "src": "2051:15:1" + "id": 78, + "name": "ElementaryTypeName", + "src": "984:7:1" } ], - "id": 148, - "name": "ParameterList", - "src": "2050:17:1" + "id": 79, + "name": "VariableDeclaration", + "src": "984:21:1" }, { + "attributes": { + "constant": false, + "name": "Desc", + "scope": 92, + "stateVariable": false, + "storageLocation": "default", + "type": "string", + "value": null, + "visibility": "internal" + }, "children": [ { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "isStructConstructorCall": false, - "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false - }, - "children": [ - { - "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_55773d3b2bd39b3876a14b8e856b7c336540f2418c95de8a5412baa157c90865", - "typeString": "literal_string \"This Account does not issue any Id\"" - } - ], - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" - }, - "id": 149, - "name": "Identifier", - "src": "2079:7:1" - }, - { - "attributes": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "==", - "type": "bool" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "member_name": "Status", - "referencedDeclaration": 83, - "type": "uint256" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuer storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 108, - "type": "mapping(address => struct Identity.issuer storage ref)", - "value": "IssuerDetail" - }, - "id": 150, - "name": "Identifier", - "src": "2087:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 147, - "type": "address", - "value": "account" - }, - "id": 151, - "name": "Identifier", - "src": "2100:7:1" - } - ], - "id": 152, - "name": "IndexAccess", - "src": "2087:21:1" - } - ], - "id": 153, - "name": "MemberAccess", - "src": "2087:28:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "32", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "number", - "type": "int_const 2", - "value": "2" - }, - "id": 154, - "name": "Literal", - "src": "2119:1:1" - } - ], - "id": 155, - "name": "BinaryOperation", - "src": "2087:33:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "54686973204163636f756e7420646f6573206e6f7420697373756520616e79204964", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"This Account does not issue any Id\"", - "value": "This Account does not issue any Id" - }, - "id": 156, - "name": "Literal", - "src": "2121:36:1" - } - ], - "id": 157, - "name": "FunctionCall", - "src": "2079:79:1" - } - ], - "id": 158, - "name": "ExpressionStatement", - "src": "2079:79:1" - }, - { - "id": 159, - "name": "PlaceholderStatement", - "src": "2169:1:1" + "attributes": { + "name": "string", + "type": "string" + }, + "id": 80, + "name": "ElementaryTypeName", + "src": "1016:6:1" } ], - "id": 160, - "name": "Block", - "src": "2068:110:1" - } - ], - "id": 161, - "name": "ModifierDefinition", - "src": "2036:142:1" - }, - { - "attributes": { - "documentation": "*************Functions**************", - "implemented": true, - "isConstructor": false, - "kind": "function", - "modifiers": [ - null - ], - "name": "registerUser", - "scope": 1090, - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - "children": [ + "id": 81, + "name": "VariableDeclaration", + "src": "1016:11:1" + }, { + "attributes": { + "constant": false, + "name": "Status", + "scope": 92, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, "children": [ { "attributes": { - "constant": false, - "name": "_PublicKey", - "scope": 213, - "stateVariable": false, - "storageLocation": "memory", - "type": "string", - "value": null, - "visibility": "internal" + "name": "uint", + "type": "uint256" }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 162, - "name": "ElementaryTypeName", - "src": "2284:6:1" - } - ], - "id": 163, - "name": "VariableDeclaration", - "src": "2284:24:1" + "id": 82, + "name": "ElementaryTypeName", + "src": "1038:4:1" } ], - "id": 164, - "name": "ParameterList", - "src": "2283:26:1" + "id": 83, + "name": "VariableDeclaration", + "src": "1038:11:1" }, { "attributes": { - "parameters": [ - null - ] + "constant": false, + "name": "IssueId", + "scope": 92, + "stateVariable": false, + "storageLocation": "default", + "type": "string", + "value": null, + "visibility": "internal" }, - "children": [], - "id": 165, - "name": "ParameterList", - "src": "2317:0:1" - }, - { "children": [ { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "isStructConstructorCall": false, - "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false - }, - "children": [ - { - "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_29afcb10c410b3804f0aa36267a0a51d131869fdb04829ce29febfcbb7ea7b51", - "typeString": "literal_string \"Account Already Registered\"" - } - ], - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" - }, - "id": 166, - "name": "Identifier", - "src": "2328:7:1" - }, - { - "attributes": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "==", - "type": "bool" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "member_name": "Registered", - "referencedDeclaration": 54, - "type": "bool" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.user storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 104, - "type": "mapping(address => struct Identity.user storage ref)", - "value": "UserDetail" - }, - "id": 167, - "name": "Identifier", - "src": "2336:10:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 168, - "name": "Identifier", - "src": "2347:3:1" - } - ], - "id": 169, - "name": "MemberAccess", - "src": "2347:10:1" - } - ], - "id": 170, - "name": "IndexAccess", - "src": "2336:22:1" - } - ], - "id": 171, - "name": "MemberAccess", - "src": "2336:33:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "66616c7365", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "bool", - "type": "bool", - "value": "false" - }, - "id": 172, - "name": "Literal", - "src": "2373:5:1" - } - ], - "id": 173, - "name": "BinaryOperation", - "src": "2336:42:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "4163636f756e7420416c72656164792052656769737465726564", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"Account Already Registered\"", - "value": "Account Already Registered" - }, - "id": 174, - "name": "Literal", - "src": "2379:28:1" - } - ], - "id": 175, - "name": "FunctionCall", - "src": "2328:80:1" - } - ], - "id": 176, - "name": "ExpressionStatement", - "src": "2328:80:1" - }, + "attributes": { + "name": "string", + "type": "string" + }, + "id": 84, + "name": "ElementaryTypeName", + "src": "1103:6:1" + } + ], + "id": 85, + "name": "VariableDeclaration", + "src": "1103:14:1" + }, + { + "attributes": { + "constant": false, + "name": "ReqCount", + "scope": 92, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ { "attributes": { - "assignments": [ - 178 - ], - "initialValue": null + "name": "uint", + "type": "uint256" + }, + "id": 86, + "name": "ElementaryTypeName", + "src": "1128:4:1" + } + ], + "id": 87, + "name": "VariableDeclaration", + "src": "1128:13:1" + }, + { + "attributes": { + "constant": false, + "name": "Request", + "scope": 92, + "stateVariable": false, + "storageLocation": "default", + "type": "mapping(uint256 => struct Identity.verifyIdRequest)", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "type": "mapping(uint256 => struct Identity.verifyIdRequest)" }, "children": [ { "attributes": { - "constant": false, - "name": "newUser", - "scope": 212, - "stateVariable": false, - "storageLocation": "memory", - "type": "struct Identity.user", - "value": null, - "visibility": "internal" + "name": "uint", + "type": "uint256" }, - "children": [ - { - "attributes": { - "contractScope": null, - "name": "user", - "referencedDeclaration": 61, - "type": "struct Identity.user" - }, - "id": 177, - "name": "UserDefinedTypeName", - "src": "2419:4:1" - } - ], - "id": 178, - "name": "VariableDeclaration", - "src": "2419:19:1" - } - ], - "id": 179, - "name": "VariableDeclarationStatement", - "src": "2419:19:1" - }, - { - "children": [ + "id": 88, + "name": "ElementaryTypeName", + "src": "1160:4:1" + }, { "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "=", - "type": "address" + "contractScope": null, + "name": "verifyIdRequest", + "referencedDeclaration": 68, + "type": "struct Identity.verifyIdRequest" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "member_name": "UserAddress", - "referencedDeclaration": 50, - "type": "address" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 178, - "type": "struct Identity.user memory", - "value": "newUser" - }, - "id": 180, - "name": "Identifier", - "src": "2449:7:1" - } - ], - "id": 182, - "name": "MemberAccess", - "src": "2449:19:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 183, - "name": "Identifier", - "src": "2471:3:1" - } - ], - "id": 184, - "name": "MemberAccess", - "src": "2471:10:1" - } - ], - "id": 185, - "name": "Assignment", - "src": "2449:32:1" + "id": 89, + "name": "UserDefinedTypeName", + "src": "1168:15:1" } ], - "id": 186, - "name": "ExpressionStatement", - "src": "2449:32:1" - }, + "id": 90, + "name": "Mapping", + "src": "1152:32:1" + } + ], + "id": 91, + "name": "VariableDeclaration", + "src": "1152:40:1" + } + ], + "id": 92, + "name": "StructDefinition", + "src": "959:241:1" + }, + { + "attributes": { + "constant": false, + "name": "Owner", + "scope": 1006, + "stateVariable": true, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 93, + "name": "ElementaryTypeName", + "src": "1260:7:1" + } + ], + "id": 94, + "name": "VariableDeclaration", + "src": "1260:20:1" + }, + { + "attributes": { + "constant": false, + "name": "Issuer", + "scope": 1006, + "stateVariable": true, + "storageLocation": "default", + "type": "struct Identity.issuer[]", + "value": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "struct Identity.issuer[]" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "issuer", + "referencedDeclaration": 92, + "type": "struct Identity.issuer" + }, + "id": 95, + "name": "UserDefinedTypeName", + "src": "1287:6:1" + } + ], + "id": 96, + "name": "ArrayTypeName", + "src": "1287:8:1" + } + ], + "id": 97, + "name": "VariableDeclaration", + "src": "1287:22:1" + }, + { + "attributes": { + "constant": false, + "name": "IssuerVerificationRequest", + "scope": 1006, + "stateVariable": true, + "storageLocation": "default", + "type": "struct Identity.issuerVerificationRequest[]", + "value": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "length": null, + "type": "struct Identity.issuerVerificationRequest[]" + }, + "children": [ { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "=", - "type": "uint256" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "member_name": "IdCount", - "referencedDeclaration": 56, - "type": "uint256" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 178, - "type": "struct Identity.user memory", - "value": "newUser" - }, - "id": 187, - "name": "Identifier", - "src": "2492:7:1" - } - ], - "id": 189, - "name": "MemberAccess", - "src": "2492:15:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "30", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "number", - "type": "int_const 0", - "value": "0" - }, - "id": 190, - "name": "Literal", - "src": "2510:1:1" - } - ], - "id": 191, - "name": "Assignment", - "src": "2492:19:1" - } - ], - "id": 192, - "name": "ExpressionStatement", - "src": "2492:19:1" + "attributes": { + "contractScope": null, + "name": "issuerVerificationRequest", + "referencedDeclaration": 77, + "type": "struct Identity.issuerVerificationRequest" + }, + "id": 98, + "name": "UserDefinedTypeName", + "src": "1316:25:1" + } + ], + "id": 99, + "name": "ArrayTypeName", + "src": "1316:27:1" + } + ], + "id": 100, + "name": "VariableDeclaration", + "src": "1316:60:1" + }, + { + "attributes": { + "constant": false, + "name": "UserDetail", + "scope": 1006, + "stateVariable": true, + "storageLocation": "default", + "type": "mapping(address => struct Identity.user)", + "value": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "type": "mapping(address => struct Identity.user)" + }, + "children": [ + { + "attributes": { + "name": "address", + "type": "address" + }, + "id": 101, + "name": "ElementaryTypeName", + "src": "1391:7:1" }, { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "=", - "type": "string memory" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "member_name": "PublicKey", - "referencedDeclaration": 52, - "type": "string memory" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 178, - "type": "struct Identity.user memory", - "value": "newUser" - }, - "id": 193, - "name": "Identifier", - "src": "2522:7:1" - } - ], - "id": 195, - "name": "MemberAccess", - "src": "2522:17:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 163, - "type": "string memory", - "value": "_PublicKey" - }, - "id": 196, - "name": "Identifier", - "src": "2542:10:1" - } - ], - "id": 197, - "name": "Assignment", - "src": "2522:30:1" - } - ], - "id": 198, - "name": "ExpressionStatement", - "src": "2522:30:1" + "attributes": { + "contractScope": null, + "name": "user", + "referencedDeclaration": 61, + "type": "struct Identity.user" + }, + "id": 102, + "name": "UserDefinedTypeName", + "src": "1402:4:1" + } + ], + "id": 103, + "name": "Mapping", + "src": "1383:24:1" + } + ], + "id": 104, + "name": "VariableDeclaration", + "src": "1383:42:1" + }, + { + "attributes": { + "constant": false, + "name": "IssuerDetail", + "scope": 1006, + "stateVariable": true, + "storageLocation": "default", + "type": "mapping(address => struct Identity.issuer)", + "value": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "type": "mapping(address => struct Identity.issuer)" + }, + "children": [ + { + "attributes": { + "name": "address", + "type": "address" + }, + "id": 105, + "name": "ElementaryTypeName", + "src": "1440:7:1" }, + { + "attributes": { + "contractScope": null, + "name": "issuer", + "referencedDeclaration": 92, + "type": "struct Identity.issuer" + }, + "id": 106, + "name": "UserDefinedTypeName", + "src": "1451:6:1" + } + ], + "id": 107, + "name": "Mapping", + "src": "1432:26:1" + } + ], + "id": 108, + "name": "VariableDeclaration", + "src": "1432:46:1" + }, + { + "attributes": { + "documentation": "*************Constructor**************", + "implemented": true, + "isConstructor": true, + "kind": "constructor", + "modifiers": [ + null + ], + "name": "", + "scope": 1006, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 109, + "name": "ParameterList", + "src": "1606:2:1" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 110, + "name": "ParameterList", + "src": "1616:0:1" + }, + { + "children": [ { "children": [ { @@ -16604,88 +14334,33 @@ "isPure": false, "lValueRequested": false, "operator": "=", - "type": "bool" + "type": "address" }, "children": [ { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "member_name": "Registered", - "referencedDeclaration": 54, - "type": "bool" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 94, + "type": "address", + "value": "Owner" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 178, - "type": "struct Identity.user memory", - "value": "newUser" - }, - "id": 199, - "name": "Identifier", - "src": "2563:7:1" - } - ], - "id": 201, - "name": "MemberAccess", - "src": "2563:18:1" + "id": 111, + "name": "Identifier", + "src": "1627:5:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "74727565", "isConstant": false, "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "bool", - "type": "bool", - "value": "true" - }, - "id": 202, - "name": "Literal", - "src": "2584:4:1" - } - ], - "id": 203, - "name": "Assignment", - "src": "2563:25:1" - } - ], - "id": 204, - "name": "ExpressionStatement", - "src": "2563:25:1" - }, - { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "=", - "type": "struct Identity.user storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, "isPure": false, - "lValueRequested": true, - "type": "struct Identity.user storage ref" + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" }, "children": [ { @@ -16694,156 +14369,46 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 104, - "type": "mapping(address => struct Identity.user storage ref)", - "value": "UserDetail" + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" }, - "id": 205, + "id": 112, "name": "Identifier", - "src": "2599:10:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 206, - "name": "Identifier", - "src": "2610:3:1" - } - ], - "id": 207, - "name": "MemberAccess", - "src": "2610:10:1" + "src": "1635:3:1" } ], - "id": 208, - "name": "IndexAccess", - "src": "2599:22:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 178, - "type": "struct Identity.user memory", - "value": "newUser" - }, - "id": 209, - "name": "Identifier", - "src": "2624:7:1" + "id": 113, + "name": "MemberAccess", + "src": "1635:10:1" } ], - "id": 210, + "id": 114, "name": "Assignment", - "src": "2599:32:1" + "src": "1627:18:1" } ], - "id": 211, + "id": 115, "name": "ExpressionStatement", - "src": "2599:32:1" + "src": "1627:18:1" } ], - "id": 212, + "id": 116, "name": "Block", - "src": "2317:322:1" + "src": "1616:37:1" } ], - "id": 213, + "id": 117, "name": "FunctionDefinition", - "src": "2262:377:1" + "src": "1595:58:1" }, { "attributes": { - "documentation": null, - "implemented": true, - "isConstructor": false, - "kind": "function", - "name": "requestIssuerAccount", - "scope": 1090, - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" + "documentation": "*************Modifiers**************", + "name": "restricted", + "visibility": "internal" }, - "children": [ - { - "children": [ - { - "attributes": { - "constant": false, - "name": "_Desc", - "scope": 311, - "stateVariable": false, - "storageLocation": "memory", - "type": "string", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 214, - "name": "ElementaryTypeName", - "src": "2710:6:1" - } - ], - "id": 215, - "name": "VariableDeclaration", - "src": "2710:19:1" - }, - { - "attributes": { - "constant": false, - "name": "_IssueId", - "scope": 311, - "stateVariable": false, - "storageLocation": "memory", - "type": "string", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 216, - "name": "ElementaryTypeName", - "src": "2731:6:1" - } - ], - "id": 217, - "name": "VariableDeclaration", - "src": "2731:22:1" - } - ], - "id": 218, - "name": "ParameterList", - "src": "2709:45:1" - }, + "children": [ { "attributes": { "parameters": [ @@ -16851,61 +14416,9 @@ ] }, "children": [], - "id": 223, + "id": 118, "name": "ParameterList", - "src": "2785:0:1" - }, - { - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 145, - "type": "modifier (address)", - "value": "registered" - }, - "id": 219, - "name": "Identifier", - "src": "2755:10:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 220, - "name": "Identifier", - "src": "2766:3:1" - } - ], - "id": 221, - "name": "MemberAccess", - "src": "2766:10:1" - } - ], - "id": 222, - "name": "ModifierInvocation", - "src": "2755:22:1" + "src": "1760:2:1" }, { "children": [ @@ -16934,28 +14447,28 @@ "typeString": "bool" }, { - "typeIdentifier": "t_stringliteral_770d5cef283513f5354f9174f20254815d377a8f1b26ada22a2c8d7a2c633452", - "typeString": "literal_string \"Either Account is already an Issuer or has a pending issuer request\"" + "typeIdentifier": "t_stringliteral_593fd4f5418ae095969b093812245f49eb950b9775e5afd767614f342e26d4f2", + "typeString": "literal_string \"Not Authorized\"" } ], "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, + "referencedDeclaration": 1025, "type": "function (bool,string memory) pure", "value": "require" }, - "id": 224, + "id": 119, "name": "Identifier", - "src": "2796:7:1" + "src": "1774:7:1" }, { "attributes": { "argumentTypes": null, "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_address", + "typeString": "address" }, "isConstant": false, "isLValue": false, @@ -16969,254 +14482,137 @@ "attributes": { "argumentTypes": null, "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "member_name": "Status", - "referencedDeclaration": 83, - "type": "uint256" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuer storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 108, - "type": "mapping(address => struct Identity.issuer storage ref)", - "value": "IssuerDetail" - }, - "id": 225, - "name": "Identifier", - "src": "2804:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 226, - "name": "Identifier", - "src": "2817:3:1" - } - ], - "id": 227, - "name": "MemberAccess", - "src": "2817:10:1" - } - ], - "id": 228, - "name": "IndexAccess", - "src": "2804:24:1" - } - ], - "id": 229, - "name": "MemberAccess", - "src": "2804:31:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "30", - "isConstant": false, "isLValue": false, - "isPure": true, + "isPure": false, "lValueRequested": false, - "subdenomination": null, - "token": "number", - "type": "int_const 0", - "value": "0" + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" }, - "id": 230, - "name": "Literal", - "src": "2839:1:1" - } - ], - "id": 231, - "name": "BinaryOperation", - "src": "2804:36:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "456974686572204163636f756e7420697320616c726561647920616e20497373756572206f722068617320612070656e64696e67206973737565722072657175657374", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"Either Account is already an Issuer or has a pending issuer request\"", - "value": "Either Account is already an Issuer or has a pending issuer request" - }, - "id": 232, - "name": "Literal", - "src": "2851:69:1" - } - ], - "id": 233, - "name": "FunctionCall", - "src": "2796:125:1" - } - ], - "id": 234, - "name": "ExpressionStatement", - "src": "2796:125:1" - }, - { - "attributes": { - "assignments": [ - 236 - ], - "initialValue": null - }, - "children": [ - { - "attributes": { - "constant": false, - "name": "newIssuer", - "scope": 310, - "stateVariable": false, - "storageLocation": "memory", - "type": "struct Identity.issuer", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "contractScope": null, - "name": "issuer", - "referencedDeclaration": 92, - "type": "struct Identity.issuer" - }, - "id": 235, - "name": "UserDefinedTypeName", - "src": "2934:6:1" - } - ], - "id": 236, - "name": "VariableDeclaration", - "src": "2934:23:1" - } - ], - "id": 237, - "name": "VariableDeclarationStatement", - "src": "2934:23:1" - }, - { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "=", - "type": "address" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "member_name": "IssuerAddress", - "referencedDeclaration": 79, - "type": "address" - }, - "children": [ + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" + }, + "id": 120, + "name": "Identifier", + "src": "1782:3:1" + } + ], + "id": 121, + "name": "MemberAccess", + "src": "1782:10:1" + }, { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], - "referencedDeclaration": 236, - "type": "struct Identity.issuer memory", - "value": "newIssuer" + "referencedDeclaration": 94, + "type": "address", + "value": "Owner" }, - "id": 238, + "id": 122, "name": "Identifier", - "src": "2968:9:1" + "src": "1796:5:1" } ], - "id": 240, - "name": "MemberAccess", - "src": "2968:23:1" + "id": 123, + "name": "BinaryOperation", + "src": "1782:19:1" }, { "attributes": { "argumentTypes": null, + "hexvalue": "4e6f7420417574686f72697a6564", "isConstant": false, "isLValue": false, - "isPure": false, + "isPure": true, "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" + "subdenomination": null, + "token": "string", + "type": "literal_string \"Not Authorized\"", + "value": "Not Authorized" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 241, - "name": "Identifier", - "src": "2994:3:1" - } - ], - "id": 242, - "name": "MemberAccess", - "src": "2994:10:1" + "id": 124, + "name": "Literal", + "src": "1802:16:1" } ], - "id": 243, - "name": "Assignment", - "src": "2968:36:1" + "id": 125, + "name": "FunctionCall", + "src": "1774:45:1" } ], - "id": 244, + "id": 126, "name": "ExpressionStatement", - "src": "2968:36:1" + "src": "1774:45:1" }, + { + "id": 127, + "name": "PlaceholderStatement", + "src": "1830:1:1" + } + ], + "id": 128, + "name": "Block", + "src": "1763:76:1" + } + ], + "id": 129, + "name": "ModifierDefinition", + "src": "1741:98:1" + }, + { + "attributes": { + "documentation": null, + "name": "registered", + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "account", + "scope": 145, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "address", + "stateMutability": "nonpayable", + "type": "address" + }, + "id": 130, + "name": "ElementaryTypeName", + "src": "1902:7:1" + } + ], + "id": 131, + "name": "VariableDeclaration", + "src": "1902:15:1" + } + ], + "id": 132, + "name": "ParameterList", + "src": "1901:17:1" + }, + { + "children": [ { "children": [ { @@ -17225,137 +14621,221 @@ "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "operator": "=", - "type": "uint256" + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_17ab8566b9a02aa98ac972628373d44c8d8811ca11748676d6381ad946c9ae35", + "typeString": "literal_string \"This Account is not Registered\"" + } + ], + "overloadedDeclarations": [ + 1024, + 1025 + ], + "referencedDeclaration": 1025, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 133, + "name": "Identifier", + "src": "1930:7:1" + }, { "attributes": { "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "member_name": "Status", - "referencedDeclaration": 83, - "type": "uint256" + "lValueRequested": false, + "operator": "==", + "type": "bool" }, "children": [ { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 236, - "type": "struct Identity.issuer memory", - "value": "newIssuer" + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "Registered", + "referencedDeclaration": 54, + "type": "bool" }, - "id": 245, - "name": "Identifier", - "src": "3015:9:1" + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.user storage ref" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 104, + "type": "mapping(address => struct Identity.user storage ref)", + "value": "UserDetail" + }, + "id": 134, + "name": "Identifier", + "src": "1938:10:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 131, + "type": "address", + "value": "account" + }, + "id": 135, + "name": "Identifier", + "src": "1949:7:1" + } + ], + "id": 136, + "name": "IndexAccess", + "src": "1938:19:1" + } + ], + "id": 137, + "name": "MemberAccess", + "src": "1938:30:1" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "74727565", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "bool", + "type": "bool", + "value": "true" + }, + "id": 138, + "name": "Literal", + "src": "1972:4:1" } ], - "id": 247, - "name": "MemberAccess", - "src": "3015:16:1" + "id": 139, + "name": "BinaryOperation", + "src": "1938:38:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "31", + "hexvalue": "54686973204163636f756e74206973206e6f742052656769737465726564", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "subdenomination": null, - "token": "number", - "type": "int_const 1", - "value": "1" + "token": "string", + "type": "literal_string \"This Account is not Registered\"", + "value": "This Account is not Registered" }, - "id": 248, + "id": 140, "name": "Literal", - "src": "3034:1:1" + "src": "1977:32:1" } ], - "id": 249, - "name": "Assignment", - "src": "3015:20:1" + "id": 141, + "name": "FunctionCall", + "src": "1930:80:1" } ], - "id": 250, + "id": 142, "name": "ExpressionStatement", - "src": "3015:20:1" + "src": "1930:80:1" }, { + "id": 143, + "name": "PlaceholderStatement", + "src": "2021:1:1" + } + ], + "id": 144, + "name": "Block", + "src": "1919:111:1" + } + ], + "id": 145, + "name": "ModifierDefinition", + "src": "1882:148:1" + }, + { + "attributes": { + "documentation": null, + "name": "issue", + "visibility": "internal" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "account", + "scope": 161, + "stateVariable": false, + "storageLocation": "default", + "type": "address", + "value": null, + "visibility": "internal" + }, "children": [ { "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "=", - "type": "string memory" + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "member_name": "Desc", - "referencedDeclaration": 81, - "type": "string memory" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 236, - "type": "struct Identity.issuer memory", - "value": "newIssuer" - }, - "id": 251, - "name": "Identifier", - "src": "3046:9:1" - } - ], - "id": 253, - "name": "MemberAccess", - "src": "3046:14:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 215, - "type": "string memory", - "value": "_Desc" - }, - "id": 254, - "name": "Identifier", - "src": "3063:5:1" - } - ], - "id": 255, - "name": "Assignment", - "src": "3046:22:1" + "id": 146, + "name": "ElementaryTypeName", + "src": "2051:7:1" } ], - "id": 256, - "name": "ExpressionStatement", - "src": "3046:22:1" - }, + "id": 147, + "name": "VariableDeclaration", + "src": "2051:15:1" + } + ], + "id": 148, + "name": "ParameterList", + "src": "2050:17:1" + }, + { + "children": [ { "children": [ { @@ -17364,137 +14844,240 @@ "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "operator": "=", - "type": "string memory" + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, "children": [ { "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "member_name": "IssueId", - "referencedDeclaration": 85, - "type": "string memory" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 236, - "type": "struct Identity.issuer memory", - "value": "newIssuer" + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" }, - "id": 257, - "name": "Identifier", - "src": "3079:9:1" - } - ], - "id": 259, - "name": "MemberAccess", - "src": "3079:17:1" - }, - { - "attributes": { - "argumentTypes": null, + { + "typeIdentifier": "t_stringliteral_55773d3b2bd39b3876a14b8e856b7c336540f2418c95de8a5412baa157c90865", + "typeString": "literal_string \"This Account does not issue any Id\"" + } + ], "overloadedDeclarations": [ - null + 1024, + 1025 ], - "referencedDeclaration": 217, - "type": "string memory", - "value": "_IssueId" + "referencedDeclaration": 1025, + "type": "function (bool,string memory) pure", + "value": "require" }, - "id": 260, + "id": 149, "name": "Identifier", - "src": "3099:8:1" - } - ], - "id": 261, - "name": "Assignment", - "src": "3079:28:1" - } - ], - "id": 262, - "name": "ExpressionStatement", - "src": "3079:28:1" - }, - { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "=", - "type": "uint256" - }, - "children": [ + "src": "2079:7:1" + }, { "attributes": { "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "member_name": "ReqCount", - "referencedDeclaration": 87, - "type": "uint256" + "lValueRequested": false, + "operator": "==", + "type": "bool" }, "children": [ { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 236, - "type": "struct Identity.issuer memory", - "value": "newIssuer" + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "Status", + "referencedDeclaration": 83, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.issuer storage ref" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 108, + "type": "mapping(address => struct Identity.issuer storage ref)", + "value": "IssuerDetail" + }, + "id": 150, + "name": "Identifier", + "src": "2087:12:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 147, + "type": "address", + "value": "account" + }, + "id": 151, + "name": "Identifier", + "src": "2100:7:1" + } + ], + "id": 152, + "name": "IndexAccess", + "src": "2087:21:1" + } + ], + "id": 153, + "name": "MemberAccess", + "src": "2087:28:1" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "32", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 2", + "value": "2" }, - "id": 263, - "name": "Identifier", - "src": "3118:9:1" + "id": 154, + "name": "Literal", + "src": "2119:1:1" } ], - "id": 265, - "name": "MemberAccess", - "src": "3118:18:1" + "id": 155, + "name": "BinaryOperation", + "src": "2087:33:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "30", + "hexvalue": "54686973204163636f756e7420646f6573206e6f7420697373756520616e79204964", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "subdenomination": null, - "token": "number", - "type": "int_const 0", - "value": "0" + "token": "string", + "type": "literal_string \"This Account does not issue any Id\"", + "value": "This Account does not issue any Id" }, - "id": 266, + "id": 156, "name": "Literal", - "src": "3139:1:1" + "src": "2121:36:1" } ], - "id": 267, - "name": "Assignment", - "src": "3118:22:1" + "id": 157, + "name": "FunctionCall", + "src": "2079:79:1" } ], - "id": 268, + "id": 158, "name": "ExpressionStatement", - "src": "3118:22:1" + "src": "2079:79:1" }, + { + "id": 159, + "name": "PlaceholderStatement", + "src": "2169:1:1" + } + ], + "id": 160, + "name": "Block", + "src": "2068:110:1" + } + ], + "id": 161, + "name": "ModifierDefinition", + "src": "2036:142:1" + }, + { + "attributes": { + "documentation": "*************Functions**************", + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "registerUser", + "scope": 1006, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_PublicKey", + "scope": 213, + "stateVariable": false, + "storageLocation": "memory", + "type": "string", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "string", + "type": "string" + }, + "id": 162, + "name": "ElementaryTypeName", + "src": "2284:6:1" + } + ], + "id": 163, + "name": "VariableDeclaration", + "src": "2284:24:1" + } + ], + "id": 164, + "name": "ParameterList", + "src": "2283:26:1" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 165, + "name": "ParameterList", + "src": "2317:0:1" + }, + { + "children": [ { "children": [ { @@ -17503,99 +15086,184 @@ "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "operator": "=", - "type": "struct Identity.issuer storage ref" + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_29afcb10c410b3804f0aa36267a0a51d131869fdb04829ce29febfcbb7ea7b51", + "typeString": "literal_string \"Account Already Registered\"" + } + ], + "overloadedDeclarations": [ + 1024, + 1025 + ], + "referencedDeclaration": 1025, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 166, + "name": "Identifier", + "src": "2328:7:1" + }, { "attributes": { "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "type": "struct Identity.issuer storage ref" + "lValueRequested": false, + "operator": "==", + "type": "bool" }, "children": [ { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 108, - "type": "mapping(address => struct Identity.issuer storage ref)", - "value": "IssuerDetail" + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "Registered", + "referencedDeclaration": 54, + "type": "bool" }, - "id": 269, - "name": "Identifier", - "src": "3153:12:1" + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.user storage ref" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 104, + "type": "mapping(address => struct Identity.user storage ref)", + "value": "UserDetail" + }, + "id": 167, + "name": "Identifier", + "src": "2336:10:1" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" + }, + "id": 168, + "name": "Identifier", + "src": "2347:3:1" + } + ], + "id": 169, + "name": "MemberAccess", + "src": "2347:10:1" + } + ], + "id": 170, + "name": "IndexAccess", + "src": "2336:22:1" + } + ], + "id": 171, + "name": "MemberAccess", + "src": "2336:33:1" }, { "attributes": { "argumentTypes": null, + "hexvalue": "66616c7365", "isConstant": false, "isLValue": false, - "isPure": false, + "isPure": true, "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" + "subdenomination": null, + "token": "bool", + "type": "bool", + "value": "false" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 270, - "name": "Identifier", - "src": "3166:3:1" - } - ], - "id": 271, - "name": "MemberAccess", - "src": "3166:10:1" + "id": 172, + "name": "Literal", + "src": "2373:5:1" } ], - "id": 272, - "name": "IndexAccess", - "src": "3153:24:1" + "id": 173, + "name": "BinaryOperation", + "src": "2336:42:1" }, { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 236, - "type": "struct Identity.issuer memory", - "value": "newIssuer" + "hexvalue": "4163636f756e7420416c72656164792052656769737465726564", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"Account Already Registered\"", + "value": "Account Already Registered" }, - "id": 273, - "name": "Identifier", - "src": "3180:9:1" + "id": 174, + "name": "Literal", + "src": "2379:28:1" } ], - "id": 274, - "name": "Assignment", - "src": "3153:36:1" + "id": 175, + "name": "FunctionCall", + "src": "2328:80:1" } ], - "id": 275, + "id": 176, "name": "ExpressionStatement", - "src": "3153:36:1" + "src": "2328:80:1" }, { "attributes": { "assignments": [ - 277 + 178 ], "initialValue": null }, @@ -17603,11 +15271,11 @@ { "attributes": { "constant": false, - "name": "NewRequest", - "scope": 310, + "name": "newUser", + "scope": 212, "stateVariable": false, "storageLocation": "memory", - "type": "struct Identity.issuerVerificationRequest", + "type": "struct Identity.user", "value": null, "visibility": "internal" }, @@ -17615,23 +15283,23 @@ { "attributes": { "contractScope": null, - "name": "issuerVerificationRequest", - "referencedDeclaration": 77, - "type": "struct Identity.issuerVerificationRequest" + "name": "user", + "referencedDeclaration": 61, + "type": "struct Identity.user" }, - "id": 276, + "id": 177, "name": "UserDefinedTypeName", - "src": "3244:25:1" + "src": "2419:4:1" } ], - "id": 277, + "id": 178, "name": "VariableDeclaration", - "src": "3244:43:1" + "src": "2419:19:1" } ], - "id": 278, + "id": 179, "name": "VariableDeclarationStatement", - "src": "3244:43:1" + "src": "2419:19:1" }, { "children": [ @@ -17653,8 +15321,8 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "member_name": "Owner", - "referencedDeclaration": 70, + "member_name": "UserAddress", + "referencedDeclaration": 50, "type": "address" }, "children": [ @@ -17664,18 +15332,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 277, - "type": "struct Identity.issuerVerificationRequest memory", - "value": "NewRequest" + "referencedDeclaration": 178, + "type": "struct Identity.user memory", + "value": "newUser" }, - "id": 279, + "id": 180, "name": "Identifier", - "src": "3298:10:1" + "src": "2449:7:1" } ], - "id": 281, + "id": 182, "name": "MemberAccess", - "src": "3298:16:1" + "src": "2449:19:1" }, { "attributes": { @@ -17695,28 +15363,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 282, + "id": 183, "name": "Identifier", - "src": "3317:3:1" + "src": "2471:3:1" } ], - "id": 283, + "id": 184, "name": "MemberAccess", - "src": "3317:10:1" + "src": "2471:10:1" } ], - "id": 284, + "id": 185, "name": "Assignment", - "src": "3298:29:1" + "src": "2449:32:1" } ], - "id": 285, + "id": 186, "name": "ExpressionStatement", - "src": "3298:29:1" + "src": "2449:32:1" }, { "children": [ @@ -17738,8 +15406,8 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "member_name": "Status", - "referencedDeclaration": 72, + "member_name": "IdCount", + "referencedDeclaration": 56, "type": "uint256" }, "children": [ @@ -17749,113 +15417,45 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 277, - "type": "struct Identity.issuerVerificationRequest memory", - "value": "NewRequest" - }, - "id": 286, - "name": "Identifier", - "src": "3338:10:1" - } - ], - "id": 288, - "name": "MemberAccess", - "src": "3338:17:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "31", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "number", - "type": "int_const 1", - "value": "1" - }, - "id": 289, - "name": "Literal", - "src": "3358:1:1" - } - ], - "id": 290, - "name": "Assignment", - "src": "3338:21:1" - } - ], - "id": 291, - "name": "ExpressionStatement", - "src": "3338:21:1" - }, - { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "=", - "type": "string memory" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "member_name": "Id", - "referencedDeclaration": 74, - "type": "string memory" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 277, - "type": "struct Identity.issuerVerificationRequest memory", - "value": "NewRequest" + "referencedDeclaration": 178, + "type": "struct Identity.user memory", + "value": "newUser" }, - "id": 292, + "id": 187, "name": "Identifier", - "src": "3370:10:1" + "src": "2492:7:1" } ], - "id": 294, + "id": 189, "name": "MemberAccess", - "src": "3370:13:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 217, - "type": "string memory", - "value": "_IssueId" + "src": "2492:15:1" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "30", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 0", + "value": "0" }, - "id": 295, - "name": "Identifier", - "src": "3386:8:1" + "id": 190, + "name": "Literal", + "src": "2510:1:1" } ], - "id": 296, + "id": 191, "name": "Assignment", - "src": "3370:24:1" + "src": "2492:19:1" } ], - "id": 297, + "id": 192, "name": "ExpressionStatement", - "src": "3370:24:1" + "src": "2492:19:1" }, { "children": [ @@ -17877,8 +15477,8 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "member_name": "Desc", - "referencedDeclaration": 76, + "member_name": "PublicKey", + "referencedDeclaration": 52, "type": "string memory" }, "children": [ @@ -17888,18 +15488,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 277, - "type": "struct Identity.issuerVerificationRequest memory", - "value": "NewRequest" + "referencedDeclaration": 178, + "type": "struct Identity.user memory", + "value": "newUser" }, - "id": 298, + "id": 193, "name": "Identifier", - "src": "3405:10:1" + "src": "2522:7:1" } ], - "id": 300, + "id": 195, "name": "MemberAccess", - "src": "3405:15:1" + "src": "2522:17:1" }, { "attributes": { @@ -17907,23 +15507,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 215, + "referencedDeclaration": 163, "type": "string memory", - "value": "_Desc" + "value": "_PublicKey" }, - "id": 301, + "id": 196, "name": "Identifier", - "src": "3423:5:1" + "src": "2542:10:1" } ], - "id": 302, + "id": 197, "name": "Assignment", - "src": "3405:23:1" + "src": "2522:30:1" } ], - "id": 303, + "id": 198, "name": "ExpressionStatement", - "src": "3405:23:1" + "src": "2522:30:1" }, { "children": [ @@ -17933,30 +15533,21 @@ "isConstant": false, "isLValue": false, "isPure": false, - "isStructConstructorCall": false, "lValueRequested": false, - "names": [ - null - ], - "type": "uint256", - "type_conversion": false + "operator": "=", + "type": "bool" }, "children": [ { "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_issuerVerificationRequest_$77_memory_ptr", - "typeString": "struct Identity.issuerVerificationRequest memory" - } - ], + "argumentTypes": null, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "member_name": "push", - "referencedDeclaration": null, - "type": "function (struct Identity.issuerVerificationRequest storage ref) returns (uint256)" + "lValueRequested": true, + "member_name": "Registered", + "referencedDeclaration": 54, + "type": "bool" }, "children": [ { @@ -17965,136 +15556,46 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 100, - "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", - "value": "IssuerVerificationRequest" + "referencedDeclaration": 178, + "type": "struct Identity.user memory", + "value": "newUser" }, - "id": 304, + "id": 199, "name": "Identifier", - "src": "3439:25:1" + "src": "2563:7:1" } ], - "id": 306, + "id": 201, "name": "MemberAccess", - "src": "3439:30:1" + "src": "2563:18:1" }, { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 277, - "type": "struct Identity.issuerVerificationRequest memory", - "value": "NewRequest" + "hexvalue": "74727565", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "bool", + "type": "bool", + "value": "true" }, - "id": 307, - "name": "Identifier", - "src": "3470:10:1" + "id": 202, + "name": "Literal", + "src": "2584:4:1" } ], - "id": 308, - "name": "FunctionCall", - "src": "3439:42:1" + "id": 203, + "name": "Assignment", + "src": "2563:25:1" } ], - "id": 309, + "id": 204, "name": "ExpressionStatement", - "src": "3439:42:1" - } - ], - "id": 310, - "name": "Block", - "src": "2785:704:1" - } - ], - "id": 311, - "name": "FunctionDefinition", - "src": "2680:809:1" - }, - { - "attributes": { - "documentation": null, - "implemented": true, - "isConstructor": false, - "kind": "function", - "name": "verifyIssuerAccount", - "scope": 1090, - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - "children": [ - { - "children": [ - { - "attributes": { - "constant": false, - "name": "_RqNo", - "scope": 376, - "stateVariable": false, - "storageLocation": "default", - "type": "uint256", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "uint", - "type": "uint256" - }, - "id": 312, - "name": "ElementaryTypeName", - "src": "3558:4:1" - } - ], - "id": 313, - "name": "VariableDeclaration", - "src": "3558:10:1" - } - ], - "id": 314, - "name": "ParameterList", - "src": "3557:12:1" - }, - { - "attributes": { - "parameters": [ - null - ] - }, - "children": [], - "id": 317, - "name": "ParameterList", - "src": "3588:0:1" - }, - { - "attributes": { - "arguments": null - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 129, - "type": "modifier ()", - "value": "restricted" - }, - "id": 315, - "name": "Identifier", - "src": "3570:10:1" - } - ], - "id": 316, - "name": "ModifierInvocation", - "src": "3570:10:1" - }, - { - "children": [ + "src": "2563:25:1" + }, { "children": [ { @@ -18103,52 +15604,19 @@ "isConstant": false, "isLValue": false, "isPure": false, - "isStructConstructorCall": false, "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false + "operator": "=", + "type": "struct Identity.user storage ref" }, - "children": [ - { - "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4ce01095403de333dab8419ff6f0f6d417a0eb4a7f3d8e3cadabfee5b81fc06e", - "typeString": "literal_string \"Request Not Found\"" - } - ], - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" - }, - "id": 318, - "name": "Identifier", - "src": "3599:7:1" - }, + "children": [ { "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "operator": "<", - "type": "bool" + "lValueRequested": true, + "type": "struct Identity.user storage ref" }, "children": [ { @@ -18157,24 +15625,24 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 313, - "type": "uint256", - "value": "_RqNo" + "referencedDeclaration": 104, + "type": "mapping(address => struct Identity.user storage ref)", + "value": "UserDetail" }, - "id": 319, + "id": 205, "name": "Identifier", - "src": "3607:5:1" + "src": "2599:10:1" }, { "attributes": { "argumentTypes": null, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "member_name": "length", + "member_name": "sender", "referencedDeclaration": null, - "type": "uint256" + "type": "address payable" }, "children": [ { @@ -18183,150 +15651,195 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 100, - "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", - "value": "IssuerVerificationRequest" + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" }, - "id": 320, + "id": 206, "name": "Identifier", - "src": "3615:25:1" + "src": "2610:3:1" } ], - "id": 321, + "id": 207, "name": "MemberAccess", - "src": "3615:32:1" + "src": "2610:10:1" } ], - "id": 322, - "name": "BinaryOperation", - "src": "3607:40:1" + "id": 208, + "name": "IndexAccess", + "src": "2599:22:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "52657175657374204e6f7420466f756e64", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"Request Not Found\"", - "value": "Request Not Found" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 178, + "type": "struct Identity.user memory", + "value": "newUser" }, - "id": 323, - "name": "Literal", - "src": "3650:19:1" + "id": 209, + "name": "Identifier", + "src": "2624:7:1" } ], - "id": 324, - "name": "FunctionCall", - "src": "3599:71:1" + "id": 210, + "name": "Assignment", + "src": "2599:32:1" } ], - "id": 325, + "id": 211, "name": "ExpressionStatement", - "src": "3599:71:1" - }, + "src": "2599:32:1" + } + ], + "id": 212, + "name": "Block", + "src": "2317:322:1" + } + ], + "id": 213, + "name": "FunctionDefinition", + "src": "2262:377:1" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "name": "requestIssuerAccount", + "scope": 1006, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "children": [ { "attributes": { - "assignments": [ - 327 - ] + "constant": false, + "name": "_Desc", + "scope": 311, + "stateVariable": false, + "storageLocation": "memory", + "type": "string", + "value": null, + "visibility": "internal" }, "children": [ { "attributes": { - "constant": false, - "name": "IssuerAddress", - "scope": 375, - "stateVariable": false, - "storageLocation": "default", - "type": "address", - "value": null, - "visibility": "internal" + "name": "string", + "type": "string" }, - "children": [ - { - "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" - }, - "id": 326, - "name": "ElementaryTypeName", - "src": "3681:7:1" - } - ], - "id": 327, - "name": "VariableDeclaration", - "src": "3681:21:1" - }, + "id": 214, + "name": "ElementaryTypeName", + "src": "2710:6:1" + } + ], + "id": 215, + "name": "VariableDeclaration", + "src": "2710:19:1" + }, + { + "attributes": { + "constant": false, + "name": "_IssueId", + "scope": 311, + "stateVariable": false, + "storageLocation": "memory", + "type": "string", + "value": null, + "visibility": "internal" + }, + "children": [ { "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "member_name": "Owner", - "referencedDeclaration": 70, - "type": "address" + "name": "string", + "type": "string" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuerVerificationRequest storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 100, - "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", - "value": "IssuerVerificationRequest" - }, - "id": 328, - "name": "Identifier", - "src": "3705:25:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 313, - "type": "uint256", - "value": "_RqNo" - }, - "id": 329, - "name": "Identifier", - "src": "3731:5:1" - } - ], - "id": 330, - "name": "IndexAccess", - "src": "3705:32:1" - } - ], - "id": 331, - "name": "MemberAccess", - "src": "3705:38:1" + "id": 216, + "name": "ElementaryTypeName", + "src": "2731:6:1" + } + ], + "id": 217, + "name": "VariableDeclaration", + "src": "2731:22:1" + } + ], + "id": 218, + "name": "ParameterList", + "src": "2709:45:1" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 223, + "name": "ParameterList", + "src": "2785:0:1" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 145, + "type": "modifier (address)", + "value": "registered" + }, + "id": 219, + "name": "Identifier", + "src": "2755:10:1" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" + }, + "id": 220, + "name": "Identifier", + "src": "2766:3:1" } ], - "id": 332, - "name": "VariableDeclarationStatement", - "src": "3681:62:1" - }, + "id": 221, + "name": "MemberAccess", + "src": "2766:10:1" + } + ], + "id": 222, + "name": "ModifierInvocation", + "src": "2755:22:1" + }, + { + "children": [ { "children": [ { @@ -18352,21 +15865,21 @@ "typeString": "bool" }, { - "typeIdentifier": "t_stringliteral_314925142d89ff327bb497e69df53a0ab4dc820328a1c73b5e126cbce50460ff", - "typeString": "literal_string \"Request Already Processed\"" + "typeIdentifier": "t_stringliteral_770d5cef283513f5354f9174f20254815d377a8f1b26ada22a2c8d7a2c633452", + "typeString": "literal_string \"Either Account is already an Issuer or has a pending issuer request\"" } ], "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, + "referencedDeclaration": 1025, "type": "function (bool,string memory) pure", "value": "require" }, - "id": 333, + "id": 224, "name": "Identifier", - "src": "3754:7:1" + "src": "2796:7:1" }, { "attributes": { @@ -18391,7 +15904,7 @@ "isPure": false, "lValueRequested": false, "member_name": "Status", - "referencedDeclaration": 72, + "referencedDeclaration": 83, "type": "uint256" }, "children": [ @@ -18402,7 +15915,7 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "type": "struct Identity.issuerVerificationRequest storage ref" + "type": "struct Identity.issuer storage ref" }, "children": [ { @@ -18411,86 +15924,229 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 100, - "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", - "value": "IssuerVerificationRequest" + "referencedDeclaration": 108, + "type": "mapping(address => struct Identity.issuer storage ref)", + "value": "IssuerDetail" }, - "id": 334, + "id": 225, "name": "Identifier", - "src": "3762:25:1" + "src": "2804:12:1" }, { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 313, - "type": "uint256", - "value": "_RqNo" + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" }, - "id": 335, - "name": "Identifier", - "src": "3788:5:1" + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" + }, + "id": 226, + "name": "Identifier", + "src": "2817:3:1" + } + ], + "id": 227, + "name": "MemberAccess", + "src": "2817:10:1" } ], - "id": 336, + "id": 228, "name": "IndexAccess", - "src": "3762:32:1" + "src": "2804:24:1" } ], - "id": 337, + "id": 229, "name": "MemberAccess", - "src": "3762:39:1" + "src": "2804:31:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "31", + "hexvalue": "30", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "subdenomination": null, "token": "number", - "type": "int_const 1", - "value": "1" + "type": "int_const 0", + "value": "0" }, - "id": 338, + "id": 230, "name": "Literal", - "src": "3805:1:1" + "src": "2839:1:1" } ], - "id": 339, + "id": 231, "name": "BinaryOperation", - "src": "3762:44:1" + "src": "2804:36:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "5265717565737420416c72656164792050726f636573736564", + "hexvalue": "456974686572204163636f756e7420697320616c726561647920616e20497373756572206f722068617320612070656e64696e67206973737565722072657175657374", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "subdenomination": null, "token": "string", - "type": "literal_string \"Request Already Processed\"", - "value": "Request Already Processed" + "type": "literal_string \"Either Account is already an Issuer or has a pending issuer request\"", + "value": "Either Account is already an Issuer or has a pending issuer request" }, - "id": 340, + "id": 232, "name": "Literal", - "src": "3809:27:1" + "src": "2851:69:1" + } + ], + "id": 233, + "name": "FunctionCall", + "src": "2796:125:1" + } + ], + "id": 234, + "name": "ExpressionStatement", + "src": "2796:125:1" + }, + { + "attributes": { + "assignments": [ + 236 + ], + "initialValue": null + }, + "children": [ + { + "attributes": { + "constant": false, + "name": "newIssuer", + "scope": 310, + "stateVariable": false, + "storageLocation": "memory", + "type": "struct Identity.issuer", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "contractScope": null, + "name": "issuer", + "referencedDeclaration": 92, + "type": "struct Identity.issuer" + }, + "id": 235, + "name": "UserDefinedTypeName", + "src": "2934:6:1" + } + ], + "id": 236, + "name": "VariableDeclaration", + "src": "2934:23:1" + } + ], + "id": 237, + "name": "VariableDeclarationStatement", + "src": "2934:23:1" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "address" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "member_name": "IssuerAddress", + "referencedDeclaration": 79, + "type": "address" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 236, + "type": "struct Identity.issuer memory", + "value": "newIssuer" + }, + "id": 238, + "name": "Identifier", + "src": "2968:9:1" + } + ], + "id": 240, + "name": "MemberAccess", + "src": "2968:23:1" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" + }, + "id": 241, + "name": "Identifier", + "src": "2994:3:1" + } + ], + "id": 242, + "name": "MemberAccess", + "src": "2994:10:1" } ], - "id": 341, - "name": "FunctionCall", - "src": "3754:83:1" + "id": 243, + "name": "Assignment", + "src": "2968:36:1" } ], - "id": 342, + "id": 244, "name": "ExpressionStatement", - "src": "3754:83:1" + "src": "2968:36:1" }, { "children": [ @@ -18500,162 +16156,68 @@ "isConstant": false, "isLValue": false, "isPure": false, - "isStructConstructorCall": false, "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false + "operator": "=", + "type": "uint256" }, "children": [ - { - "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_aa8b5beea0cdc49107e67c603e6b5392ffb106f4b5898a6103154555c2d36ad1", - "typeString": "literal_string \"Either Account is already an Issuer or did not wish to be an issuer currently\"" - } - ], - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" - }, - "id": 343, - "name": "Identifier", - "src": "3848:7:1" - }, { "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "operator": "==", - "type": "bool" + "lValueRequested": true, + "member_name": "Status", + "referencedDeclaration": 83, + "type": "uint256" }, "children": [ { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "member_name": "Status", - "referencedDeclaration": 83, - "type": "uint256" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuer storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 108, - "type": "mapping(address => struct Identity.issuer storage ref)", - "value": "IssuerDetail" - }, - "id": 344, - "name": "Identifier", - "src": "3856:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 327, - "type": "address", - "value": "IssuerAddress" - }, - "id": 345, - "name": "Identifier", - "src": "3869:13:1" - } - ], - "id": 346, - "name": "IndexAccess", - "src": "3856:27:1" - } - ], - "id": 347, - "name": "MemberAccess", - "src": "3856:34:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "31", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "number", - "type": "int_const 1", - "value": "1" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 236, + "type": "struct Identity.issuer memory", + "value": "newIssuer" }, - "id": 348, - "name": "Literal", - "src": "3894:1:1" + "id": 245, + "name": "Identifier", + "src": "3015:9:1" } ], - "id": 349, - "name": "BinaryOperation", - "src": "3856:39:1" + "id": 247, + "name": "MemberAccess", + "src": "3015:16:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "456974686572204163636f756e7420697320616c726561647920616e20497373756572206f7220646964206e6f74207769736820746f20626520616e206973737565722063757272656e746c79", + "hexvalue": "31", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "subdenomination": null, - "token": "string", - "type": "literal_string \"Either Account is already an Issuer or did not wish to be an issuer currently\"", - "value": "Either Account is already an Issuer or did not wish to be an issuer currently" + "token": "number", + "type": "int_const 1", + "value": "1" }, - "id": 350, + "id": 248, "name": "Literal", - "src": "3906:79:1" + "src": "3034:1:1" } ], - "id": 351, - "name": "FunctionCall", - "src": "3848:138:1" + "id": 249, + "name": "Assignment", + "src": "3015:20:1" } ], - "id": 352, + "id": 250, "name": "ExpressionStatement", - "src": "3848:138:1" + "src": "3015:20:1" }, { "children": [ @@ -18667,7 +16229,7 @@ "isPure": false, "lValueRequested": false, "operator": "=", - "type": "uint256" + "type": "string memory" }, "children": [ { @@ -18677,85 +16239,53 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "member_name": "Status", - "referencedDeclaration": 83, - "type": "uint256" + "member_name": "Desc", + "referencedDeclaration": 81, + "type": "string memory" }, "children": [ { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuer storage ref" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 236, + "type": "struct Identity.issuer memory", + "value": "newIssuer" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 108, - "type": "mapping(address => struct Identity.issuer storage ref)", - "value": "IssuerDetail" - }, - "id": 353, - "name": "Identifier", - "src": "4007:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 327, - "type": "address", - "value": "IssuerAddress" - }, - "id": 354, - "name": "Identifier", - "src": "4020:13:1" - } - ], - "id": 355, - "name": "IndexAccess", - "src": "4007:27:1" + "id": 251, + "name": "Identifier", + "src": "3046:9:1" } ], - "id": 356, + "id": 253, "name": "MemberAccess", - "src": "4007:34:1" + "src": "3046:14:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "32", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "number", - "type": "int_const 2", - "value": "2" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 215, + "type": "string memory", + "value": "_Desc" }, - "id": 357, - "name": "Literal", - "src": "4044:1:1" + "id": 254, + "name": "Identifier", + "src": "3063:5:1" } ], - "id": 358, + "id": 255, "name": "Assignment", - "src": "4007:38:1" + "src": "3046:22:1" } ], - "id": 359, + "id": 256, "name": "ExpressionStatement", - "src": "4007:38:1" + "src": "3046:22:1" }, { "children": [ @@ -18765,30 +16295,21 @@ "isConstant": false, "isLValue": false, "isPure": false, - "isStructConstructorCall": false, "lValueRequested": false, - "names": [ - null - ], - "type": "uint256", - "type_conversion": false + "operator": "=", + "type": "string memory" }, "children": [ { "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_struct$_issuer_$92_storage", - "typeString": "struct Identity.issuer storage ref" - } - ], + "argumentTypes": null, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "member_name": "push", - "referencedDeclaration": null, - "type": "function (struct Identity.issuer storage ref) returns (uint256)" + "lValueRequested": true, + "member_name": "IssueId", + "referencedDeclaration": 85, + "type": "string memory" }, "children": [ { @@ -18797,71 +16318,42 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 97, - "type": "struct Identity.issuer storage ref[] storage ref", - "value": "Issuer" + "referencedDeclaration": 236, + "type": "struct Identity.issuer memory", + "value": "newIssuer" }, - "id": 360, + "id": 257, "name": "Identifier", - "src": "4056:6:1" + "src": "3079:9:1" } ], - "id": 362, + "id": 259, "name": "MemberAccess", - "src": "4056:11:1" + "src": "3079:17:1" }, { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuer storage ref" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 217, + "type": "string memory", + "value": "_IssueId" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 108, - "type": "mapping(address => struct Identity.issuer storage ref)", - "value": "IssuerDetail" - }, - "id": 363, - "name": "Identifier", - "src": "4068:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 327, - "type": "address", - "value": "IssuerAddress" - }, - "id": 364, - "name": "Identifier", - "src": "4081:13:1" - } - ], - "id": 365, - "name": "IndexAccess", - "src": "4068:27:1" + "id": 260, + "name": "Identifier", + "src": "3099:8:1" } ], - "id": 366, - "name": "FunctionCall", - "src": "4056:40:1" + "id": 261, + "name": "Assignment", + "src": "3079:28:1" } ], - "id": 367, + "id": 262, "name": "ExpressionStatement", - "src": "4056:40:1" + "src": "3079:28:1" }, { "children": [ @@ -18883,179 +16375,57 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "member_name": "Status", - "referencedDeclaration": 72, + "member_name": "ReqCount", + "referencedDeclaration": 87, "type": "uint256" }, "children": [ { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuerVerificationRequest storage ref" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 236, + "type": "struct Identity.issuer memory", + "value": "newIssuer" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 100, - "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", - "value": "IssuerVerificationRequest" - }, - "id": 368, - "name": "Identifier", - "src": "4107:25:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 313, - "type": "uint256", - "value": "_RqNo" - }, - "id": 369, - "name": "Identifier", - "src": "4133:5:1" - } - ], - "id": 370, - "name": "IndexAccess", - "src": "4107:32:1" + "id": 263, + "name": "Identifier", + "src": "3118:9:1" } ], - "id": 371, + "id": 265, "name": "MemberAccess", - "src": "4107:39:1" + "src": "3118:18:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "32", + "hexvalue": "30", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "subdenomination": null, "token": "number", - "type": "int_const 2", - "value": "2" + "type": "int_const 0", + "value": "0" }, - "id": 372, + "id": 266, "name": "Literal", - "src": "4149:1:1" + "src": "3139:1:1" } ], - "id": 373, + "id": 267, "name": "Assignment", - "src": "4107:43:1" - } - ], - "id": 374, - "name": "ExpressionStatement", - "src": "4107:43:1" - } - ], - "id": 375, - "name": "Block", - "src": "3588:570:1" - } - ], - "id": 376, - "name": "FunctionDefinition", - "src": "3529:629:1" - }, - { - "attributes": { - "documentation": null, - "implemented": true, - "isConstructor": false, - "kind": "function", - "name": "rejectIssuerAccount", - "scope": 1090, - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - "children": [ - { - "children": [ - { - "attributes": { - "constant": false, - "name": "_RqNo", - "scope": 433, - "stateVariable": false, - "storageLocation": "default", - "type": "uint256", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "uint", - "type": "uint256" - }, - "id": 377, - "name": "ElementaryTypeName", - "src": "4227:4:1" - } - ], - "id": 378, - "name": "VariableDeclaration", - "src": "4227:10:1" - } - ], - "id": 379, - "name": "ParameterList", - "src": "4226:12:1" - }, - { - "attributes": { - "parameters": [ - null - ] - }, - "children": [], - "id": 382, - "name": "ParameterList", - "src": "4257:0:1" - }, - { - "attributes": { - "arguments": null - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 129, - "type": "modifier ()", - "value": "restricted" - }, - "id": 380, - "name": "Identifier", - "src": "4239:10:1" - } - ], - "id": 381, - "name": "ModifierInvocation", - "src": "4239:10:1" - }, - { - "children": [ + "src": "3118:22:1" + } + ], + "id": 268, + "name": "ExpressionStatement", + "src": "3118:22:1" + }, { "children": [ { @@ -19064,52 +16434,19 @@ "isConstant": false, "isLValue": false, "isPure": false, - "isStructConstructorCall": false, "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false + "operator": "=", + "type": "struct Identity.issuer storage ref" }, "children": [ - { - "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_4ce01095403de333dab8419ff6f0f6d417a0eb4a7f3d8e3cadabfee5b81fc06e", - "typeString": "literal_string \"Request Not Found\"" - } - ], - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" - }, - "id": 383, - "name": "Identifier", - "src": "4268:7:1" - }, { "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "operator": "<", - "type": "bool" + "lValueRequested": true, + "type": "struct Identity.issuer storage ref" }, "children": [ { @@ -19118,24 +16455,24 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 378, - "type": "uint256", - "value": "_RqNo" + "referencedDeclaration": 108, + "type": "mapping(address => struct Identity.issuer storage ref)", + "value": "IssuerDetail" }, - "id": 384, + "id": 269, "name": "Identifier", - "src": "4276:5:1" + "src": "3153:12:1" }, { "attributes": { "argumentTypes": null, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "member_name": "length", + "member_name": "sender", "referencedDeclaration": null, - "type": "uint256" + "type": "address payable" }, "children": [ { @@ -19144,94 +16481,99 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 100, - "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", - "value": "IssuerVerificationRequest" + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" }, - "id": 385, + "id": 270, "name": "Identifier", - "src": "4284:25:1" + "src": "3166:3:1" } ], - "id": 386, + "id": 271, "name": "MemberAccess", - "src": "4284:32:1" + "src": "3166:10:1" } ], - "id": 387, - "name": "BinaryOperation", - "src": "4276:40:1" + "id": 272, + "name": "IndexAccess", + "src": "3153:24:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "52657175657374204e6f7420466f756e64", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"Request Not Found\"", - "value": "Request Not Found" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 236, + "type": "struct Identity.issuer memory", + "value": "newIssuer" }, - "id": 388, - "name": "Literal", - "src": "4319:19:1" + "id": 273, + "name": "Identifier", + "src": "3180:9:1" } ], - "id": 389, - "name": "FunctionCall", - "src": "4268:71:1" + "id": 274, + "name": "Assignment", + "src": "3153:36:1" } ], - "id": 390, + "id": 275, "name": "ExpressionStatement", - "src": "4268:71:1" + "src": "3153:36:1" }, { "attributes": { "assignments": [ - 392 - ] + 277 + ], + "initialValue": null }, "children": [ { "attributes": { "constant": false, - "name": "IssuerAddress", - "scope": 432, + "name": "NewRequest", + "scope": 310, "stateVariable": false, - "storageLocation": "default", - "type": "address", + "storageLocation": "memory", + "type": "struct Identity.issuerVerificationRequest", "value": null, "visibility": "internal" }, "children": [ { "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" + "contractScope": null, + "name": "issuerVerificationRequest", + "referencedDeclaration": 77, + "type": "struct Identity.issuerVerificationRequest" }, - "id": 391, - "name": "ElementaryTypeName", - "src": "4350:7:1" + "id": 276, + "name": "UserDefinedTypeName", + "src": "3244:25:1" } ], - "id": 392, + "id": 277, "name": "VariableDeclaration", - "src": "4350:21:1" - }, + "src": "3244:43:1" + } + ], + "id": 278, + "name": "VariableDeclarationStatement", + "src": "3244:43:1" + }, + { + "children": [ { "attributes": { "argumentTypes": null, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "member_name": "Owner", - "referencedDeclaration": 70, + "operator": "=", "type": "address" }, "children": [ @@ -19241,8 +16583,10 @@ "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuerVerificationRequest storage ref" + "lValueRequested": true, + "member_name": "Owner", + "referencedDeclaration": 70, + "type": "address" }, "children": [ { @@ -19251,207 +16595,130 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 100, - "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", - "value": "IssuerVerificationRequest" + "referencedDeclaration": 277, + "type": "struct Identity.issuerVerificationRequest memory", + "value": "NewRequest" }, - "id": 393, + "id": 279, "name": "Identifier", - "src": "4374:25:1" - }, + "src": "3298:10:1" + } + ], + "id": 281, + "name": "MemberAccess", + "src": "3298:16:1" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], - "referencedDeclaration": 378, - "type": "uint256", - "value": "_RqNo" + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" }, - "id": 394, + "id": 282, "name": "Identifier", - "src": "4400:5:1" + "src": "3317:3:1" } ], - "id": 395, - "name": "IndexAccess", - "src": "4374:32:1" + "id": 283, + "name": "MemberAccess", + "src": "3317:10:1" } ], - "id": 396, - "name": "MemberAccess", - "src": "4374:38:1" - } - ], - "id": 397, - "name": "VariableDeclarationStatement", - "src": "4350:62:1" - }, - { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "isStructConstructorCall": false, - "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false - }, - "children": [ - { - "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_314925142d89ff327bb497e69df53a0ab4dc820328a1c73b5e126cbce50460ff", - "typeString": "literal_string \"Request Already Processed\"" - } - ], - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" - }, - "id": 398, - "name": "Identifier", - "src": "4423:7:1" - }, + "id": 284, + "name": "Assignment", + "src": "3298:29:1" + } + ], + "id": 285, + "name": "ExpressionStatement", + "src": "3298:29:1" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "=", + "type": "uint256" + }, + "children": [ { "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "operator": "==", - "type": "bool" + "lValueRequested": true, + "member_name": "Status", + "referencedDeclaration": 72, + "type": "uint256" }, "children": [ { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "member_name": "Status", - "referencedDeclaration": 72, - "type": "uint256" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuerVerificationRequest storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 100, - "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", - "value": "IssuerVerificationRequest" - }, - "id": 399, - "name": "Identifier", - "src": "4431:25:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 378, - "type": "uint256", - "value": "_RqNo" - }, - "id": 400, - "name": "Identifier", - "src": "4457:5:1" - } - ], - "id": 401, - "name": "IndexAccess", - "src": "4431:32:1" - } - ], - "id": 402, - "name": "MemberAccess", - "src": "4431:39:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "31", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "number", - "type": "int_const 1", - "value": "1" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 277, + "type": "struct Identity.issuerVerificationRequest memory", + "value": "NewRequest" }, - "id": 403, - "name": "Literal", - "src": "4474:1:1" + "id": 286, + "name": "Identifier", + "src": "3338:10:1" } ], - "id": 404, - "name": "BinaryOperation", - "src": "4431:44:1" + "id": 288, + "name": "MemberAccess", + "src": "3338:17:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "5265717565737420416c72656164792050726f636573736564", + "hexvalue": "31", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "subdenomination": null, - "token": "string", - "type": "literal_string \"Request Already Processed\"", - "value": "Request Already Processed" + "token": "number", + "type": "int_const 1", + "value": "1" }, - "id": 405, + "id": 289, "name": "Literal", - "src": "4478:27:1" + "src": "3358:1:1" } ], - "id": 406, - "name": "FunctionCall", - "src": "4423:83:1" + "id": 290, + "name": "Assignment", + "src": "3338:21:1" } ], - "id": 407, + "id": 291, "name": "ExpressionStatement", - "src": "4423:83:1" + "src": "3338:21:1" }, { "children": [ @@ -19461,162 +16728,65 @@ "isConstant": false, "isLValue": false, "isPure": false, - "isStructConstructorCall": false, "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false + "operator": "=", + "type": "string memory" }, "children": [ - { - "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_aa8b5beea0cdc49107e67c603e6b5392ffb106f4b5898a6103154555c2d36ad1", - "typeString": "literal_string \"Either Account is already an Issuer or did not wish to be an issuer currently\"" - } - ], - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" - }, - "id": 408, - "name": "Identifier", - "src": "4517:7:1" - }, { "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "operator": "==", - "type": "bool" + "lValueRequested": true, + "member_name": "Id", + "referencedDeclaration": 74, + "type": "string memory" }, "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "member_name": "Status", - "referencedDeclaration": 83, - "type": "uint256" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuer storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 108, - "type": "mapping(address => struct Identity.issuer storage ref)", - "value": "IssuerDetail" - }, - "id": 409, - "name": "Identifier", - "src": "4525:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 392, - "type": "address", - "value": "IssuerAddress" - }, - "id": 410, - "name": "Identifier", - "src": "4538:13:1" - } - ], - "id": 411, - "name": "IndexAccess", - "src": "4525:27:1" - } - ], - "id": 412, - "name": "MemberAccess", - "src": "4525:34:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "31", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "number", - "type": "int_const 1", - "value": "1" + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 277, + "type": "struct Identity.issuerVerificationRequest memory", + "value": "NewRequest" }, - "id": 413, - "name": "Literal", - "src": "4563:1:1" + "id": 292, + "name": "Identifier", + "src": "3370:10:1" } ], - "id": 414, - "name": "BinaryOperation", - "src": "4525:39:1" + "id": 294, + "name": "MemberAccess", + "src": "3370:13:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "456974686572204163636f756e7420697320616c726561647920616e20497373756572206f7220646964206e6f74207769736820746f20626520616e206973737565722063757272656e746c79", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"Either Account is already an Issuer or did not wish to be an issuer currently\"", - "value": "Either Account is already an Issuer or did not wish to be an issuer currently" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 217, + "type": "string memory", + "value": "_IssueId" }, - "id": 415, - "name": "Literal", - "src": "4575:79:1" + "id": 295, + "name": "Identifier", + "src": "3386:8:1" } ], - "id": 416, - "name": "FunctionCall", - "src": "4517:138:1" + "id": 296, + "name": "Assignment", + "src": "3370:24:1" } ], - "id": 417, + "id": 297, "name": "ExpressionStatement", - "src": "4517:138:1" + "src": "3370:24:1" }, { "children": [ @@ -19628,7 +16798,7 @@ "isPure": false, "lValueRequested": false, "operator": "=", - "type": "uint256" + "type": "string memory" }, "children": [ { @@ -19638,85 +16808,53 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "member_name": "Status", - "referencedDeclaration": 83, - "type": "uint256" + "member_name": "Desc", + "referencedDeclaration": 76, + "type": "string memory" }, "children": [ { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuer storage ref" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 277, + "type": "struct Identity.issuerVerificationRequest memory", + "value": "NewRequest" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 108, - "type": "mapping(address => struct Identity.issuer storage ref)", - "value": "IssuerDetail" - }, - "id": 418, - "name": "Identifier", - "src": "4676:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 392, - "type": "address", - "value": "IssuerAddress" - }, - "id": 419, - "name": "Identifier", - "src": "4689:13:1" - } - ], - "id": 420, - "name": "IndexAccess", - "src": "4676:27:1" + "id": 298, + "name": "Identifier", + "src": "3405:10:1" } ], - "id": 421, + "id": 300, "name": "MemberAccess", - "src": "4676:34:1" + "src": "3405:15:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "30", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "number", - "type": "int_const 0", - "value": "0" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 215, + "type": "string memory", + "value": "_Desc" }, - "id": 422, - "name": "Literal", - "src": "4713:1:1" + "id": 301, + "name": "Identifier", + "src": "3423:5:1" } ], - "id": 423, + "id": 302, "name": "Assignment", - "src": "4676:38:1" + "src": "3405:23:1" } ], - "id": 424, + "id": 303, "name": "ExpressionStatement", - "src": "4676:38:1" + "src": "3405:23:1" }, { "children": [ @@ -19726,107 +16864,84 @@ "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "operator": "=", - "type": "uint256" + "names": [ + null + ], + "type": "uint256", + "type_conversion": false }, "children": [ { "attributes": { - "argumentTypes": null, + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_issuerVerificationRequest_$77_memory_ptr", + "typeString": "struct Identity.issuerVerificationRequest memory" + } + ], "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "member_name": "Status", - "referencedDeclaration": 72, - "type": "uint256" + "lValueRequested": false, + "member_name": "push", + "referencedDeclaration": null, + "type": "function (struct Identity.issuerVerificationRequest storage ref) returns (uint256)" }, "children": [ { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuerVerificationRequest storage ref" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 100, + "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", + "value": "IssuerVerificationRequest" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 100, - "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", - "value": "IssuerVerificationRequest" - }, - "id": 425, - "name": "Identifier", - "src": "4725:25:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 378, - "type": "uint256", - "value": "_RqNo" - }, - "id": 426, - "name": "Identifier", - "src": "4751:5:1" - } - ], - "id": 427, - "name": "IndexAccess", - "src": "4725:32:1" + "id": 304, + "name": "Identifier", + "src": "3439:25:1" } ], - "id": 428, + "id": 306, "name": "MemberAccess", - "src": "4725:39:1" + "src": "3439:30:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "30", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "number", - "type": "int_const 0", - "value": "0" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 277, + "type": "struct Identity.issuerVerificationRequest memory", + "value": "NewRequest" }, - "id": 429, - "name": "Literal", - "src": "4767:1:1" + "id": 307, + "name": "Identifier", + "src": "3470:10:1" } ], - "id": 430, - "name": "Assignment", - "src": "4725:43:1" + "id": 308, + "name": "FunctionCall", + "src": "3439:42:1" } ], - "id": 431, + "id": 309, "name": "ExpressionStatement", - "src": "4725:43:1" + "src": "3439:42:1" } ], - "id": 432, + "id": 310, "name": "Block", - "src": "4257:519:1" + "src": "2785:704:1" } ], - "id": 433, + "id": 311, "name": "FunctionDefinition", - "src": "4198:578:1" + "src": "2680:809:1" }, { "attributes": { @@ -19834,8 +16949,8 @@ "implemented": true, "isConstructor": false, "kind": "function", - "name": "newId", - "scope": 1090, + "name": "verifyIssuerAccount", + "scope": 1006, "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -19846,112 +16961,33 @@ { "attributes": { "constant": false, - "name": "_Hash", - "scope": 545, - "stateVariable": false, - "storageLocation": "memory", - "type": "string", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 434, - "name": "ElementaryTypeName", - "src": "4825:6:1" - } - ], - "id": 435, - "name": "VariableDeclaration", - "src": "4825:19:1" - }, - { - "attributes": { - "constant": false, - "name": "_Issuer", - "scope": 545, + "name": "_RqNo", + "scope": 376, "stateVariable": false, "storageLocation": "default", - "type": "address", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "address", - "stateMutability": "nonpayable", - "type": "address" - }, - "id": 436, - "name": "ElementaryTypeName", - "src": "4846:7:1" - } - ], - "id": 437, - "name": "VariableDeclaration", - "src": "4846:15:1" - }, - { - "attributes": { - "constant": false, - "name": "_Sign", - "scope": 545, - "stateVariable": false, - "storageLocation": "memory", - "type": "string", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "string", - "type": "string" - }, - "id": 438, - "name": "ElementaryTypeName", - "src": "4862:6:1" - } - ], - "id": 439, - "name": "VariableDeclaration", - "src": "4862:19:1" - }, - { - "attributes": { - "constant": false, - "name": "_IssuerHash", - "scope": 545, - "stateVariable": false, - "storageLocation": "memory", - "type": "string", + "type": "uint256", "value": null, "visibility": "internal" }, "children": [ { "attributes": { - "name": "string", - "type": "string" + "name": "uint", + "type": "uint256" }, - "id": 440, + "id": 312, "name": "ElementaryTypeName", - "src": "4883:6:1" + "src": "3558:4:1" } ], - "id": 441, + "id": 313, "name": "VariableDeclaration", - "src": "4883:25:1" + "src": "3558:10:1" } ], - "id": 442, + "id": 314, "name": "ParameterList", - "src": "4824:85:1" + "src": "3557:12:1" }, { "attributes": { @@ -19960,11 +16996,14 @@ ] }, "children": [], - "id": 450, + "id": 317, "name": "ParameterList", - "src": "4960:0:1" + "src": "3588:0:1" }, { + "attributes": { + "arguments": null + }, "children": [ { "attributes": { @@ -19972,139 +17011,198 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 145, - "type": "modifier (address)", - "value": "registered" + "referencedDeclaration": 129, + "type": "modifier ()", + "value": "restricted" }, - "id": 443, + "id": 315, "name": "Identifier", - "src": "4916:10:1" - }, + "src": "3570:10:1" + } + ], + "id": 316, + "name": "ModifierInvocation", + "src": "3570:10:1" + }, + { + "children": [ { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, "children": [ { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ + "isConstant": false, + "isLValue": false, + "isPure": false, + "isStructConstructorCall": false, + "lValueRequested": false, + "names": [ null ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" + "type": "tuple()", + "type_conversion": false }, - "id": 444, - "name": "Identifier", - "src": "4927:3:1" + "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4ce01095403de333dab8419ff6f0f6d417a0eb4a7f3d8e3cadabfee5b81fc06e", + "typeString": "literal_string \"Request Not Found\"" + } + ], + "overloadedDeclarations": [ + 1024, + 1025 + ], + "referencedDeclaration": 1025, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 318, + "name": "Identifier", + "src": "3599:7:1" + }, + { + "attributes": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "<", + "type": "bool" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 313, + "type": "uint256", + "value": "_RqNo" + }, + "id": 319, + "name": "Identifier", + "src": "3607:5:1" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "length", + "referencedDeclaration": null, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 100, + "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", + "value": "IssuerVerificationRequest" + }, + "id": 320, + "name": "Identifier", + "src": "3615:25:1" + } + ], + "id": 321, + "name": "MemberAccess", + "src": "3615:32:1" + } + ], + "id": 322, + "name": "BinaryOperation", + "src": "3607:40:1" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "52657175657374204e6f7420466f756e64", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"Request Not Found\"", + "value": "Request Not Found" + }, + "id": 323, + "name": "Literal", + "src": "3650:19:1" + } + ], + "id": 324, + "name": "FunctionCall", + "src": "3599:71:1" } ], - "id": 445, - "name": "MemberAccess", - "src": "4927:10:1" - } - ], - "id": 446, - "name": "ModifierInvocation", - "src": "4916:22:1" - }, - { - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 161, - "type": "modifier (address)", - "value": "issue" - }, - "id": 447, - "name": "Identifier", - "src": "4939:5:1" + "id": 325, + "name": "ExpressionStatement", + "src": "3599:71:1" }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 437, - "type": "address", - "value": "_Issuer" - }, - "id": 448, - "name": "Identifier", - "src": "4945:7:1" - } - ], - "id": 449, - "name": "ModifierInvocation", - "src": "4939:14:1" - }, - { - "children": [ { "attributes": { "assignments": [ - 452 - ], - "initialValue": null + 327 + ] }, "children": [ { "attributes": { "constant": false, - "name": "NewId", - "scope": 544, + "name": "IssuerAddress", + "scope": 375, "stateVariable": false, - "storageLocation": "memory", - "type": "struct Identity.identity", + "storageLocation": "default", + "type": "address", "value": null, "visibility": "internal" }, "children": [ { "attributes": { - "contractScope": null, - "name": "identity", - "referencedDeclaration": 48, - "type": "struct Identity.identity" + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "id": 451, - "name": "UserDefinedTypeName", - "src": "4971:8:1" + "id": 326, + "name": "ElementaryTypeName", + "src": "3681:7:1" } ], - "id": 452, + "id": 327, "name": "VariableDeclaration", - "src": "4971:21:1" - } - ], - "id": 453, - "name": "VariableDeclarationStatement", - "src": "4971:21:1" - }, - { - "children": [ + "src": "3681:21:1" + }, { "attributes": { "argumentTypes": null, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, "lValueRequested": false, - "operator": "=", - "type": "string memory" + "member_name": "Owner", + "referencedDeclaration": 70, + "type": "address" }, "children": [ { @@ -20113,10 +17211,8 @@ "isConstant": false, "isLValue": true, "isPure": false, - "lValueRequested": true, - "member_name": "Name", - "referencedDeclaration": 37, - "type": "string memory" + "lValueRequested": false, + "type": "struct Identity.issuerVerificationRequest storage ref" }, "children": [ { @@ -20125,88 +17221,42 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 452, - "type": "struct Identity.identity memory", - "value": "NewId" + "referencedDeclaration": 100, + "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", + "value": "IssuerVerificationRequest" }, - "id": 454, + "id": 328, "name": "Identifier", - "src": "5003:5:1" - } - ], - "id": 456, - "name": "MemberAccess", - "src": "5003:10:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "member_name": "IssueId", - "referencedDeclaration": 85, - "type": "string storage ref" - }, - "children": [ + "src": "3705:25:1" + }, { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuer storage ref" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 313, + "type": "uint256", + "value": "_RqNo" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 108, - "type": "mapping(address => struct Identity.issuer storage ref)", - "value": "IssuerDetail" - }, - "id": 457, - "name": "Identifier", - "src": "5016:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 437, - "type": "address", - "value": "_Issuer" - }, - "id": 458, - "name": "Identifier", - "src": "5029:7:1" - } - ], - "id": 459, - "name": "IndexAccess", - "src": "5016:21:1" + "id": 329, + "name": "Identifier", + "src": "3731:5:1" } ], - "id": 460, - "name": "MemberAccess", - "src": "5016:29:1" + "id": 330, + "name": "IndexAccess", + "src": "3705:32:1" } ], - "id": 461, - "name": "Assignment", - "src": "5003:42:1" + "id": 331, + "name": "MemberAccess", + "src": "3705:38:1" } ], - "id": 462, - "name": "ExpressionStatement", - "src": "5003:42:1" + "id": 332, + "name": "VariableDeclarationStatement", + "src": "3681:62:1" }, { "children": [ @@ -20216,65 +17266,162 @@ "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "operator": "=", - "type": "string memory" + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_314925142d89ff327bb497e69df53a0ab4dc820328a1c73b5e126cbce50460ff", + "typeString": "literal_string \"Request Already Processed\"" + } + ], + "overloadedDeclarations": [ + 1024, + 1025 + ], + "referencedDeclaration": 1025, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 333, + "name": "Identifier", + "src": "3754:7:1" + }, { "attributes": { "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "member_name": "Hash", - "referencedDeclaration": 39, - "type": "string memory" + "lValueRequested": false, + "operator": "==", + "type": "bool" }, "children": [ { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 452, - "type": "struct Identity.identity memory", - "value": "NewId" + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "Status", + "referencedDeclaration": 72, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.issuerVerificationRequest storage ref" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 100, + "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", + "value": "IssuerVerificationRequest" + }, + "id": 334, + "name": "Identifier", + "src": "3762:25:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 313, + "type": "uint256", + "value": "_RqNo" + }, + "id": 335, + "name": "Identifier", + "src": "3788:5:1" + } + ], + "id": 336, + "name": "IndexAccess", + "src": "3762:32:1" + } + ], + "id": 337, + "name": "MemberAccess", + "src": "3762:39:1" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "31", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 1", + "value": "1" }, - "id": 463, - "name": "Identifier", - "src": "5056:5:1" + "id": 338, + "name": "Literal", + "src": "3805:1:1" } ], - "id": 465, - "name": "MemberAccess", - "src": "5056:10:1" + "id": 339, + "name": "BinaryOperation", + "src": "3762:44:1" }, { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 435, - "type": "string memory", - "value": "_Hash" + "hexvalue": "5265717565737420416c72656164792050726f636573736564", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"Request Already Processed\"", + "value": "Request Already Processed" }, - "id": 466, - "name": "Identifier", - "src": "5069:5:1" + "id": 340, + "name": "Literal", + "src": "3809:27:1" } ], - "id": 467, - "name": "Assignment", - "src": "5056:18:1" + "id": 341, + "name": "FunctionCall", + "src": "3754:83:1" } ], - "id": 468, + "id": 342, "name": "ExpressionStatement", - "src": "5056:18:1" + "src": "3754:83:1" }, { "children": [ @@ -20284,82 +17431,162 @@ "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "operator": "=", - "type": "address" + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_aa8b5beea0cdc49107e67c603e6b5392ffb106f4b5898a6103154555c2d36ad1", + "typeString": "literal_string \"Either Account is already an Issuer or did not wish to be an issuer currently\"" + } + ], + "overloadedDeclarations": [ + 1024, + 1025 + ], + "referencedDeclaration": 1025, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 343, + "name": "Identifier", + "src": "3848:7:1" + }, { "attributes": { "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "member_name": "Owner", - "referencedDeclaration": 41, - "type": "address" + "lValueRequested": false, + "operator": "==", + "type": "bool" }, "children": [ { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 452, - "type": "struct Identity.identity memory", - "value": "NewId" + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "Status", + "referencedDeclaration": 83, + "type": "uint256" }, - "id": 469, - "name": "Identifier", - "src": "5085:5:1" + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.issuer storage ref" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 108, + "type": "mapping(address => struct Identity.issuer storage ref)", + "value": "IssuerDetail" + }, + "id": 344, + "name": "Identifier", + "src": "3856:12:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 327, + "type": "address", + "value": "IssuerAddress" + }, + "id": 345, + "name": "Identifier", + "src": "3869:13:1" + } + ], + "id": 346, + "name": "IndexAccess", + "src": "3856:27:1" + } + ], + "id": 347, + "name": "MemberAccess", + "src": "3856:34:1" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "31", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 1", + "value": "1" + }, + "id": 348, + "name": "Literal", + "src": "3894:1:1" } ], - "id": 471, - "name": "MemberAccess", - "src": "5085:11:1" + "id": 349, + "name": "BinaryOperation", + "src": "3856:39:1" }, { "attributes": { "argumentTypes": null, + "hexvalue": "456974686572204163636f756e7420697320616c726561647920616e20497373756572206f7220646964206e6f74207769736820746f20626520616e206973737565722063757272656e746c79", "isConstant": false, "isLValue": false, - "isPure": false, + "isPure": true, "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 472, - "name": "Identifier", - "src": "5099:3:1" - } - ], - "id": 473, - "name": "MemberAccess", - "src": "5099:10:1" + "subdenomination": null, + "token": "string", + "type": "literal_string \"Either Account is already an Issuer or did not wish to be an issuer currently\"", + "value": "Either Account is already an Issuer or did not wish to be an issuer currently" + }, + "id": 350, + "name": "Literal", + "src": "3906:79:1" } ], - "id": 474, - "name": "Assignment", - "src": "5085:24:1" + "id": 351, + "name": "FunctionCall", + "src": "3848:138:1" } ], - "id": 475, + "id": 352, "name": "ExpressionStatement", - "src": "5085:24:1" + "src": "3848:138:1" }, { "children": [ @@ -20371,7 +17598,7 @@ "isPure": false, "lValueRequested": false, "operator": "=", - "type": "address" + "type": "uint256" }, "children": [ { @@ -20381,53 +17608,85 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "member_name": "Issuer", - "referencedDeclaration": 43, - "type": "address" + "member_name": "Status", + "referencedDeclaration": 83, + "type": "uint256" }, "children": [ { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 452, - "type": "struct Identity.identity memory", - "value": "NewId" + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.issuer storage ref" }, - "id": 476, - "name": "Identifier", - "src": "5120:5:1" + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 108, + "type": "mapping(address => struct Identity.issuer storage ref)", + "value": "IssuerDetail" + }, + "id": 353, + "name": "Identifier", + "src": "4007:12:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 327, + "type": "address", + "value": "IssuerAddress" + }, + "id": 354, + "name": "Identifier", + "src": "4020:13:1" + } + ], + "id": 355, + "name": "IndexAccess", + "src": "4007:27:1" } ], - "id": 478, + "id": 356, "name": "MemberAccess", - "src": "5120:12:1" + "src": "4007:34:1" }, { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 437, - "type": "address", - "value": "_Issuer" + "hexvalue": "32", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 2", + "value": "2" }, - "id": 479, - "name": "Identifier", - "src": "5135:7:1" + "id": 357, + "name": "Literal", + "src": "4044:1:1" } ], - "id": 480, + "id": 358, "name": "Assignment", - "src": "5120:22:1" + "src": "4007:38:1" } ], - "id": 481, + "id": 359, "name": "ExpressionStatement", - "src": "5120:22:1" + "src": "4007:38:1" }, { "children": [ @@ -20437,21 +17696,30 @@ "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "operator": "=", - "type": "string memory" + "names": [ + null + ], + "type": "uint256", + "type_conversion": false }, "children": [ { "attributes": { - "argumentTypes": null, + "argumentTypes": [ + { + "typeIdentifier": "t_struct$_issuer_$92_storage", + "typeString": "struct Identity.issuer storage ref" + } + ], "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "member_name": "OwnerSignature", - "referencedDeclaration": 45, - "type": "string memory" + "lValueRequested": false, + "member_name": "push", + "referencedDeclaration": null, + "type": "function (struct Identity.issuer storage ref) returns (uint256)" }, "children": [ { @@ -20460,42 +17728,71 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 452, - "type": "struct Identity.identity memory", - "value": "NewId" + "referencedDeclaration": 97, + "type": "struct Identity.issuer storage ref[] storage ref", + "value": "Issuer" }, - "id": 482, + "id": 360, "name": "Identifier", - "src": "5153:5:1" + "src": "4056:6:1" } ], - "id": 484, + "id": 362, "name": "MemberAccess", - "src": "5153:20:1" + "src": "4056:11:1" }, { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 439, - "type": "string memory", - "value": "_Sign" + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.issuer storage ref" }, - "id": 485, - "name": "Identifier", - "src": "5176:5:1" + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 108, + "type": "mapping(address => struct Identity.issuer storage ref)", + "value": "IssuerDetail" + }, + "id": 363, + "name": "Identifier", + "src": "4068:12:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 327, + "type": "address", + "value": "IssuerAddress" + }, + "id": 364, + "name": "Identifier", + "src": "4081:13:1" + } + ], + "id": 365, + "name": "IndexAccess", + "src": "4068:27:1" } ], - "id": 486, - "name": "Assignment", - "src": "5153:28:1" + "id": 366, + "name": "FunctionCall", + "src": "4056:40:1" } ], - "id": 487, + "id": 367, "name": "ExpressionStatement", - "src": "5153:28:1" + "src": "4056:40:1" }, { "children": [ @@ -20507,7 +17804,7 @@ "isPure": false, "lValueRequested": false, "operator": "=", - "type": "string memory" + "type": "uint256" }, "children": [ { @@ -20517,57 +17814,179 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "member_name": "IssuerSignature", - "referencedDeclaration": 47, - "type": "string memory" + "member_name": "Status", + "referencedDeclaration": 72, + "type": "uint256" }, "children": [ { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 452, - "type": "struct Identity.identity memory", - "value": "NewId" + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.issuerVerificationRequest storage ref" }, - "id": 488, - "name": "Identifier", - "src": "5192:5:1" + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 100, + "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", + "value": "IssuerVerificationRequest" + }, + "id": 368, + "name": "Identifier", + "src": "4107:25:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 313, + "type": "uint256", + "value": "_RqNo" + }, + "id": 369, + "name": "Identifier", + "src": "4133:5:1" + } + ], + "id": 370, + "name": "IndexAccess", + "src": "4107:32:1" } ], - "id": 490, + "id": 371, "name": "MemberAccess", - "src": "5192:21:1" + "src": "4107:39:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "50656e64696e67", + "hexvalue": "32", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "subdenomination": null, - "token": "string", - "type": "literal_string \"Pending\"", - "value": "Pending" + "token": "number", + "type": "int_const 2", + "value": "2" }, - "id": 491, + "id": 372, "name": "Literal", - "src": "5216:9:1" + "src": "4149:1:1" } ], - "id": 492, + "id": 373, "name": "Assignment", - "src": "5192:33:1" + "src": "4107:43:1" } ], - "id": 493, + "id": 374, "name": "ExpressionStatement", - "src": "5192:33:1" - }, + "src": "4107:43:1" + } + ], + "id": 375, + "name": "Block", + "src": "3588:570:1" + } + ], + "id": 376, + "name": "FunctionDefinition", + "src": "3529:629:1" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "name": "rejectIssuerAccount", + "scope": 1006, + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "children": [ + { + "attributes": { + "constant": false, + "name": "_RqNo", + "scope": 433, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 377, + "name": "ElementaryTypeName", + "src": "4227:4:1" + } + ], + "id": 378, + "name": "VariableDeclaration", + "src": "4227:10:1" + } + ], + "id": 379, + "name": "ParameterList", + "src": "4226:12:1" + }, + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 382, + "name": "ParameterList", + "src": "4257:0:1" + }, + { + "attributes": { + "arguments": null + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 129, + "type": "modifier ()", + "value": "restricted" + }, + "id": 380, + "name": "Identifier", + "src": "4239:10:1" + } + ], + "id": 381, + "name": "ModifierInvocation", + "src": "4239:10:1" + }, + { + "children": [ { "children": [ { @@ -20576,261 +17995,229 @@ "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "operator": "=", - "type": "struct Identity.identity storage ref" + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_4ce01095403de333dab8419ff6f0f6d417a0eb4a7f3d8e3cadabfee5b81fc06e", + "typeString": "literal_string \"Request Not Found\"" + } + ], + "overloadedDeclarations": [ + 1024, + 1025 + ], + "referencedDeclaration": 1025, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 383, + "name": "Identifier", + "src": "4268:7:1" + }, { "attributes": { "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "type": "struct Identity.identity storage ref" + "lValueRequested": false, + "operator": "<", + "type": "bool" }, "children": [ { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "member_name": "Ids", - "referencedDeclaration": 60, - "type": "mapping(uint256 => struct Identity.identity storage ref)" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 378, + "type": "uint256", + "value": "_RqNo" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.user storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 104, - "type": "mapping(address => struct Identity.user storage ref)", - "value": "UserDetail" - }, - "id": 494, - "name": "Identifier", - "src": "5236:10:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 495, - "name": "Identifier", - "src": "5247:3:1" - } - ], - "id": 496, - "name": "MemberAccess", - "src": "5247:10:1" - } - ], - "id": 497, - "name": "IndexAccess", - "src": "5236:22:1" - } - ], - "id": 498, - "name": "MemberAccess", - "src": "5236:26:1" + "id": 384, + "name": "Identifier", + "src": "4276:5:1" }, { "attributes": { "argumentTypes": null, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, "lValueRequested": false, - "operator": "++", - "prefix": false, + "member_name": "length", + "referencedDeclaration": null, "type": "uint256" }, "children": [ { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "member_name": "IdCount", - "referencedDeclaration": 56, - "type": "uint256" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 100, + "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", + "value": "IssuerVerificationRequest" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.user storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 104, - "type": "mapping(address => struct Identity.user storage ref)", - "value": "UserDetail" - }, - "id": 499, - "name": "Identifier", - "src": "5263:10:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 500, - "name": "Identifier", - "src": "5274:3:1" - } - ], - "id": 501, - "name": "MemberAccess", - "src": "5274:10:1" - } - ], - "id": 502, - "name": "IndexAccess", - "src": "5263:22:1" - } - ], - "id": 503, - "name": "MemberAccess", - "src": "5263:30:1" + "id": 385, + "name": "Identifier", + "src": "4284:25:1" } ], - "id": 504, - "name": "UnaryOperation", - "src": "5263:32:1" + "id": 386, + "name": "MemberAccess", + "src": "4284:32:1" } ], - "id": 505, - "name": "IndexAccess", - "src": "5236:60:1" + "id": 387, + "name": "BinaryOperation", + "src": "4276:40:1" }, { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 452, - "type": "struct Identity.identity memory", - "value": "NewId" + "hexvalue": "52657175657374204e6f7420466f756e64", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"Request Not Found\"", + "value": "Request Not Found" }, - "id": 506, - "name": "Identifier", - "src": "5299:5:1" + "id": 388, + "name": "Literal", + "src": "4319:19:1" } ], - "id": 507, - "name": "Assignment", - "src": "5236:68:1" + "id": 389, + "name": "FunctionCall", + "src": "4268:71:1" } ], - "id": 508, + "id": 390, "name": "ExpressionStatement", - "src": "5236:68:1" + "src": "4268:71:1" }, { "attributes": { "assignments": [ - 510 - ], - "initialValue": null + 392 + ] }, "children": [ { "attributes": { "constant": false, - "name": "NewRequest", - "scope": 544, + "name": "IssuerAddress", + "scope": 432, "stateVariable": false, - "storageLocation": "memory", - "type": "struct Identity.verifyIdRequest", + "storageLocation": "default", + "type": "address", "value": null, "visibility": "internal" }, "children": [ { "attributes": { - "contractScope": null, - "name": "verifyIdRequest", - "referencedDeclaration": 68, - "type": "struct Identity.verifyIdRequest" + "name": "address", + "stateMutability": "nonpayable", + "type": "address" }, - "id": 509, - "name": "UserDefinedTypeName", - "src": "5358:15:1" + "id": 391, + "name": "ElementaryTypeName", + "src": "4350:7:1" } ], - "id": 510, + "id": 392, "name": "VariableDeclaration", - "src": "5358:33:1" + "src": "4350:21:1" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "Owner", + "referencedDeclaration": 70, + "type": "address" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.issuerVerificationRequest storage ref" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 100, + "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", + "value": "IssuerVerificationRequest" + }, + "id": 393, + "name": "Identifier", + "src": "4374:25:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 378, + "type": "uint256", + "value": "_RqNo" + }, + "id": 394, + "name": "Identifier", + "src": "4400:5:1" + } + ], + "id": 395, + "name": "IndexAccess", + "src": "4374:32:1" + } + ], + "id": 396, + "name": "MemberAccess", + "src": "4374:38:1" } ], - "id": 511, + "id": 397, "name": "VariableDeclarationStatement", - "src": "5358:33:1" + "src": "4350:62:1" }, { "children": [ @@ -20840,82 +18227,162 @@ "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "operator": "=", - "type": "address" + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_314925142d89ff327bb497e69df53a0ab4dc820328a1c73b5e126cbce50460ff", + "typeString": "literal_string \"Request Already Processed\"" + } + ], + "overloadedDeclarations": [ + 1024, + 1025 + ], + "referencedDeclaration": 1025, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 398, + "name": "Identifier", + "src": "4423:7:1" + }, { "attributes": { "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "member_name": "Owner", - "referencedDeclaration": 63, - "type": "address" + "lValueRequested": false, + "operator": "==", + "type": "bool" }, "children": [ { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 510, - "type": "struct Identity.verifyIdRequest memory", - "value": "NewRequest" + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "Status", + "referencedDeclaration": 72, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.issuerVerificationRequest storage ref" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 100, + "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", + "value": "IssuerVerificationRequest" + }, + "id": 399, + "name": "Identifier", + "src": "4431:25:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 378, + "type": "uint256", + "value": "_RqNo" + }, + "id": 400, + "name": "Identifier", + "src": "4457:5:1" + } + ], + "id": 401, + "name": "IndexAccess", + "src": "4431:32:1" + } + ], + "id": 402, + "name": "MemberAccess", + "src": "4431:39:1" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "31", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 1", + "value": "1" }, - "id": 512, - "name": "Identifier", - "src": "5402:10:1" + "id": 403, + "name": "Literal", + "src": "4474:1:1" } ], - "id": 514, - "name": "MemberAccess", - "src": "5402:16:1" + "id": 404, + "name": "BinaryOperation", + "src": "4431:44:1" }, { "attributes": { "argumentTypes": null, + "hexvalue": "5265717565737420416c72656164792050726f636573736564", "isConstant": false, "isLValue": false, - "isPure": false, + "isPure": true, "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" + "subdenomination": null, + "token": "string", + "type": "literal_string \"Request Already Processed\"", + "value": "Request Already Processed" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 515, - "name": "Identifier", - "src": "5421:3:1" - } - ], - "id": 516, - "name": "MemberAccess", - "src": "5421:10:1" + "id": 405, + "name": "Literal", + "src": "4478:27:1" } ], - "id": 517, - "name": "Assignment", - "src": "5402:29:1" + "id": 406, + "name": "FunctionCall", + "src": "4423:83:1" } ], - "id": 518, + "id": 407, "name": "ExpressionStatement", - "src": "5402:29:1" + "src": "4423:83:1" }, { "children": [ @@ -20925,65 +18392,162 @@ "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "operator": "=", - "type": "string memory" + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, "children": [ + { + "attributes": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_aa8b5beea0cdc49107e67c603e6b5392ffb106f4b5898a6103154555c2d36ad1", + "typeString": "literal_string \"Either Account is already an Issuer or did not wish to be an issuer currently\"" + } + ], + "overloadedDeclarations": [ + 1024, + 1025 + ], + "referencedDeclaration": 1025, + "type": "function (bool,string memory) pure", + "value": "require" + }, + "id": 408, + "name": "Identifier", + "src": "4517:7:1" + }, { "attributes": { "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, - "lValueRequested": true, - "member_name": "Hash", - "referencedDeclaration": 65, - "type": "string memory" + "lValueRequested": false, + "operator": "==", + "type": "bool" }, "children": [ { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 510, - "type": "struct Identity.verifyIdRequest memory", - "value": "NewRequest" + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "Status", + "referencedDeclaration": 83, + "type": "uint256" }, - "id": 519, - "name": "Identifier", - "src": "5442:10:1" + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.issuer storage ref" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 108, + "type": "mapping(address => struct Identity.issuer storage ref)", + "value": "IssuerDetail" + }, + "id": 409, + "name": "Identifier", + "src": "4525:12:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 392, + "type": "address", + "value": "IssuerAddress" + }, + "id": 410, + "name": "Identifier", + "src": "4538:13:1" + } + ], + "id": 411, + "name": "IndexAccess", + "src": "4525:27:1" + } + ], + "id": 412, + "name": "MemberAccess", + "src": "4525:34:1" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "31", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 1", + "value": "1" + }, + "id": 413, + "name": "Literal", + "src": "4563:1:1" } ], - "id": 521, - "name": "MemberAccess", - "src": "5442:15:1" + "id": 414, + "name": "BinaryOperation", + "src": "4525:39:1" }, { "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 441, - "type": "string memory", - "value": "_IssuerHash" + "argumentTypes": null, + "hexvalue": "456974686572204163636f756e7420697320616c726561647920616e20497373756572206f7220646964206e6f74207769736820746f20626520616e206973737565722063757272656e746c79", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"Either Account is already an Issuer or did not wish to be an issuer currently\"", + "value": "Either Account is already an Issuer or did not wish to be an issuer currently" }, - "id": 522, - "name": "Identifier", - "src": "5460:11:1" + "id": 415, + "name": "Literal", + "src": "4575:79:1" } ], - "id": 523, - "name": "Assignment", - "src": "5442:29:1" + "id": 416, + "name": "FunctionCall", + "src": "4517:138:1" } ], - "id": 524, + "id": 417, "name": "ExpressionStatement", - "src": "5442:29:1" + "src": "4517:138:1" }, { "children": [ @@ -21006,55 +18570,84 @@ "isPure": false, "lValueRequested": true, "member_name": "Status", - "referencedDeclaration": 67, + "referencedDeclaration": 83, "type": "uint256" }, "children": [ { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 510, - "type": "struct Identity.verifyIdRequest memory", - "value": "NewRequest" + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.issuer storage ref" }, - "id": 525, - "name": "Identifier", - "src": "5482:10:1" + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 108, + "type": "mapping(address => struct Identity.issuer storage ref)", + "value": "IssuerDetail" + }, + "id": 418, + "name": "Identifier", + "src": "4676:12:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 392, + "type": "address", + "value": "IssuerAddress" + }, + "id": 419, + "name": "Identifier", + "src": "4689:13:1" + } + ], + "id": 420, + "name": "IndexAccess", + "src": "4676:27:1" } ], - "id": 527, + "id": 421, "name": "MemberAccess", - "src": "5482:17:1" + "src": "4676:34:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "31", + "hexvalue": "30", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "subdenomination": null, "token": "number", - "type": "int_const 1", - "value": "1" + "type": "int_const 0", + "value": "0" }, - "id": 528, + "id": 422, "name": "Literal", - "src": "5502:1:1" + "src": "4713:1:1" } ], - "id": 529, + "id": 423, "name": "Assignment", - "src": "5482:21:1" + "src": "4676:38:1" } ], - "id": 530, + "id": 424, "name": "ExpressionStatement", - "src": "5482:21:1" + "src": "4676:38:1" }, { "children": [ @@ -21066,7 +18659,7 @@ "isPure": false, "lValueRequested": false, "operator": "=", - "type": "struct Identity.verifyIdRequest storage ref" + "type": "uint256" }, "children": [ { @@ -21076,7 +18669,9 @@ "isLValue": true, "isPure": false, "lValueRequested": true, - "type": "struct Identity.verifyIdRequest storage ref" + "member_name": "Status", + "referencedDeclaration": 72, + "type": "uint256" }, "children": [ { @@ -21086,174 +18681,83 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "member_name": "Request", - "referencedDeclaration": 91, - "type": "mapping(uint256 => struct Identity.verifyIdRequest storage ref)" + "type": "struct Identity.issuerVerificationRequest storage ref" }, "children": [ { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuer storage ref" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 100, + "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", + "value": "IssuerVerificationRequest" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 108, - "type": "mapping(address => struct Identity.issuer storage ref)", - "value": "IssuerDetail" - }, - "id": 531, - "name": "Identifier", - "src": "5514:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 437, - "type": "address", - "value": "_Issuer" - }, - "id": 532, - "name": "Identifier", - "src": "5527:7:1" - } - ], - "id": 533, - "name": "IndexAccess", - "src": "5514:21:1" - } - ], - "id": 534, - "name": "MemberAccess", - "src": "5514:29:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "++", - "prefix": false, - "type": "uint256" - }, - "children": [ + "id": 425, + "name": "Identifier", + "src": "4725:25:1" + }, { "attributes": { "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "member_name": "ReqCount", - "referencedDeclaration": 87, - "type": "uint256" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 378, + "type": "uint256", + "value": "_RqNo" }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.issuer storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 108, - "type": "mapping(address => struct Identity.issuer storage ref)", - "value": "IssuerDetail" - }, - "id": 535, - "name": "Identifier", - "src": "5544:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 437, - "type": "address", - "value": "_Issuer" - }, - "id": 536, - "name": "Identifier", - "src": "5557:7:1" - } - ], - "id": 537, - "name": "IndexAccess", - "src": "5544:21:1" - } - ], - "id": 538, - "name": "MemberAccess", - "src": "5544:30:1" + "id": 426, + "name": "Identifier", + "src": "4751:5:1" } ], - "id": 539, - "name": "UnaryOperation", - "src": "5544:32:1" + "id": 427, + "name": "IndexAccess", + "src": "4725:32:1" } ], - "id": 540, - "name": "IndexAccess", - "src": "5514:63:1" + "id": 428, + "name": "MemberAccess", + "src": "4725:39:1" }, { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 510, - "type": "struct Identity.verifyIdRequest memory", - "value": "NewRequest" + "hexvalue": "30", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "number", + "type": "int_const 0", + "value": "0" }, - "id": 541, - "name": "Identifier", - "src": "5580:10:1" + "id": 429, + "name": "Literal", + "src": "4767:1:1" } ], - "id": 542, + "id": 430, "name": "Assignment", - "src": "5514:76:1" + "src": "4725:43:1" } ], - "id": 543, + "id": 431, "name": "ExpressionStatement", - "src": "5514:76:1" + "src": "4725:43:1" } ], - "id": 544, + "id": 432, "name": "Block", - "src": "4960:638:1" + "src": "4257:519:1" } ], - "id": 545, + "id": 433, "name": "FunctionDefinition", - "src": "4810:788:1" + "src": "4198:578:1" }, { "attributes": { @@ -21261,8 +18765,8 @@ "implemented": true, "isConstructor": false, "kind": "function", - "name": "modifyId", - "scope": 1090, + "name": "newId", + "scope": 1006, "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -21274,7 +18778,7 @@ "attributes": { "constant": false, "name": "_Hash", - "scope": 665, + "scope": 545, "stateVariable": false, "storageLocation": "memory", "type": "string", @@ -21287,20 +18791,20 @@ "name": "string", "type": "string" }, - "id": 546, + "id": 434, "name": "ElementaryTypeName", - "src": "5650:6:1" + "src": "4825:6:1" } ], - "id": 547, + "id": 435, "name": "VariableDeclaration", - "src": "5650:19:1" + "src": "4825:19:1" }, { "attributes": { "constant": false, "name": "_Issuer", - "scope": 665, + "scope": 545, "stateVariable": false, "storageLocation": "default", "type": "address", @@ -21314,20 +18818,20 @@ "stateMutability": "nonpayable", "type": "address" }, - "id": 548, + "id": 436, "name": "ElementaryTypeName", - "src": "5671:7:1" + "src": "4846:7:1" } ], - "id": 549, + "id": 437, "name": "VariableDeclaration", - "src": "5671:15:1" + "src": "4846:15:1" }, { "attributes": { "constant": false, "name": "_Sign", - "scope": 665, + "scope": 545, "stateVariable": false, "storageLocation": "memory", "type": "string", @@ -21340,46 +18844,20 @@ "name": "string", "type": "string" }, - "id": 550, - "name": "ElementaryTypeName", - "src": "5687:6:1" - } - ], - "id": 551, - "name": "VariableDeclaration", - "src": "5687:19:1" - }, - { - "attributes": { - "constant": false, - "name": "_IdNum", - "scope": 665, - "stateVariable": false, - "storageLocation": "default", - "type": "uint256", - "value": null, - "visibility": "internal" - }, - "children": [ - { - "attributes": { - "name": "uint", - "type": "uint256" - }, - "id": 552, + "id": 438, "name": "ElementaryTypeName", - "src": "5715:4:1" + "src": "4862:6:1" } ], - "id": 553, + "id": 439, "name": "VariableDeclaration", - "src": "5715:11:1" + "src": "4862:19:1" }, { "attributes": { "constant": false, "name": "_IssuerHash", - "scope": 665, + "scope": 545, "stateVariable": false, "storageLocation": "memory", "type": "string", @@ -21392,19 +18870,19 @@ "name": "string", "type": "string" }, - "id": 554, + "id": 440, "name": "ElementaryTypeName", - "src": "5729:6:1" + "src": "4883:6:1" } ], - "id": 555, + "id": 441, "name": "VariableDeclaration", - "src": "5729:25:1" + "src": "4883:25:1" } ], - "id": 556, + "id": 442, "name": "ParameterList", - "src": "5649:106:1" + "src": "4824:85:1" }, { "attributes": { @@ -21413,9 +18891,9 @@ ] }, "children": [], - "id": 564, + "id": 450, "name": "ParameterList", - "src": "5800:0:1" + "src": "4960:0:1" }, { "children": [ @@ -21429,9 +18907,9 @@ "type": "modifier (address)", "value": "registered" }, - "id": 557, + "id": 443, "name": "Identifier", - "src": "5756:10:1" + "src": "4916:10:1" }, { "attributes": { @@ -21451,23 +18929,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 558, + "id": 444, "name": "Identifier", - "src": "5767:3:1" + "src": "4927:3:1" } ], - "id": 559, + "id": 445, "name": "MemberAccess", - "src": "5767:10:1" + "src": "4927:10:1" } ], - "id": 560, + "id": 446, "name": "ModifierInvocation", - "src": "5756:22:1" + "src": "4916:22:1" }, { "children": [ @@ -21481,214 +18959,35 @@ "type": "modifier (address)", "value": "issue" }, - "id": 561, + "id": 447, "name": "Identifier", - "src": "5779:5:1" + "src": "4939:5:1" }, { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null - ], - "referencedDeclaration": 549, - "type": "address", - "value": "_Issuer" - }, - "id": 562, - "name": "Identifier", - "src": "5785:7:1" - } - ], - "id": 563, - "name": "ModifierInvocation", - "src": "5779:14:1" - }, - { - "children": [ - { - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "isStructConstructorCall": false, - "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false - }, - "children": [ - { - "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_66c755726644811f09c882e30cea24e5e2f8b5a210588e3bf55a72599cbd44dc", - "typeString": "literal_string \"Id does not Exist\"" - } - ], - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" - }, - "id": 565, - "name": "Identifier", - "src": "5811:7:1" - }, - { - "attributes": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "operator": "<", - "type": "bool" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 553, - "type": "uint256", - "value": "_IdNum" - }, - "id": 566, - "name": "Identifier", - "src": "5819:6:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "member_name": "IdCount", - "referencedDeclaration": 56, - "type": "uint256" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "type": "struct Identity.user storage ref" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 104, - "type": "mapping(address => struct Identity.user storage ref)", - "value": "UserDetail" - }, - "id": 567, - "name": "Identifier", - "src": "5828:10:1" - }, - { - "attributes": { - "argumentTypes": null, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "member_name": "sender", - "referencedDeclaration": null, - "type": "address payable" - }, - "children": [ - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1105, - "type": "msg", - "value": "msg" - }, - "id": 568, - "name": "Identifier", - "src": "5839:3:1" - } - ], - "id": 569, - "name": "MemberAccess", - "src": "5839:10:1" - } - ], - "id": 570, - "name": "IndexAccess", - "src": "5828:22:1" - } - ], - "id": 571, - "name": "MemberAccess", - "src": "5828:30:1" - } - ], - "id": 572, - "name": "BinaryOperation", - "src": "5819:39:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "496420646f6573206e6f74204578697374", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"Id does not Exist\"", - "value": "Id does not Exist" - }, - "id": 573, - "name": "Literal", - "src": "5862:19:1" - } - ], - "id": 574, - "name": "FunctionCall", - "src": "5811:71:1" - } - ], - "id": 575, - "name": "ExpressionStatement", - "src": "5811:71:1" - }, + ], + "referencedDeclaration": 437, + "type": "address", + "value": "_Issuer" + }, + "id": 448, + "name": "Identifier", + "src": "4945:7:1" + } + ], + "id": 449, + "name": "ModifierInvocation", + "src": "4939:14:1" + }, + { + "children": [ { "attributes": { "assignments": [ - 577 + 452 ], "initialValue": null }, @@ -21697,7 +18996,7 @@ "attributes": { "constant": false, "name": "NewId", - "scope": 664, + "scope": 544, "stateVariable": false, "storageLocation": "memory", "type": "struct Identity.identity", @@ -21712,19 +19011,19 @@ "referencedDeclaration": 48, "type": "struct Identity.identity" }, - "id": 576, + "id": 451, "name": "UserDefinedTypeName", - "src": "5903:8:1" + "src": "4971:8:1" } ], - "id": 577, + "id": 452, "name": "VariableDeclaration", - "src": "5903:21:1" + "src": "4971:21:1" } ], - "id": 578, + "id": 453, "name": "VariableDeclarationStatement", - "src": "5903:21:1" + "src": "4971:21:1" }, { "children": [ @@ -21757,18 +19056,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 577, + "referencedDeclaration": 452, "type": "struct Identity.identity memory", "value": "NewId" }, - "id": 579, + "id": 454, "name": "Identifier", - "src": "5935:5:1" + "src": "5003:5:1" } ], - "id": 581, + "id": 456, "name": "MemberAccess", - "src": "5935:10:1" + "src": "5003:10:1" }, { "attributes": { @@ -21802,9 +19101,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 582, + "id": 457, "name": "Identifier", - "src": "5948:12:1" + "src": "5016:12:1" }, { "attributes": { @@ -21812,33 +19111,33 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 549, + "referencedDeclaration": 437, "type": "address", "value": "_Issuer" }, - "id": 583, + "id": 458, "name": "Identifier", - "src": "5961:7:1" + "src": "5029:7:1" } ], - "id": 584, + "id": 459, "name": "IndexAccess", - "src": "5948:21:1" + "src": "5016:21:1" } ], - "id": 585, + "id": 460, "name": "MemberAccess", - "src": "5948:29:1" + "src": "5016:29:1" } ], - "id": 586, + "id": 461, "name": "Assignment", - "src": "5935:42:1" + "src": "5003:42:1" } ], - "id": 587, + "id": 462, "name": "ExpressionStatement", - "src": "5935:42:1" + "src": "5003:42:1" }, { "children": [ @@ -21871,18 +19170,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 577, + "referencedDeclaration": 452, "type": "struct Identity.identity memory", "value": "NewId" }, - "id": 588, + "id": 463, "name": "Identifier", - "src": "5988:5:1" + "src": "5056:5:1" } ], - "id": 590, + "id": 465, "name": "MemberAccess", - "src": "5988:10:1" + "src": "5056:10:1" }, { "attributes": { @@ -21890,23 +19189,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 547, + "referencedDeclaration": 435, "type": "string memory", "value": "_Hash" }, - "id": 591, + "id": 466, "name": "Identifier", - "src": "6001:5:1" + "src": "5069:5:1" } ], - "id": 592, + "id": 467, "name": "Assignment", - "src": "5988:18:1" + "src": "5056:18:1" } ], - "id": 593, + "id": 468, "name": "ExpressionStatement", - "src": "5988:18:1" + "src": "5056:18:1" }, { "children": [ @@ -21939,18 +19238,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 577, + "referencedDeclaration": 452, "type": "struct Identity.identity memory", "value": "NewId" }, - "id": 594, + "id": 469, "name": "Identifier", - "src": "6017:5:1" + "src": "5085:5:1" } ], - "id": 596, + "id": 471, "name": "MemberAccess", - "src": "6017:11:1" + "src": "5085:11:1" }, { "attributes": { @@ -21970,28 +19269,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 597, + "id": 472, "name": "Identifier", - "src": "6031:3:1" + "src": "5099:3:1" } ], - "id": 598, + "id": 473, "name": "MemberAccess", - "src": "6031:10:1" + "src": "5099:10:1" } ], - "id": 599, + "id": 474, "name": "Assignment", - "src": "6017:24:1" + "src": "5085:24:1" } ], - "id": 600, + "id": 475, "name": "ExpressionStatement", - "src": "6017:24:1" + "src": "5085:24:1" }, { "children": [ @@ -22024,18 +19323,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 577, + "referencedDeclaration": 452, "type": "struct Identity.identity memory", "value": "NewId" }, - "id": 601, + "id": 476, "name": "Identifier", - "src": "6052:5:1" + "src": "5120:5:1" } ], - "id": 603, + "id": 478, "name": "MemberAccess", - "src": "6052:12:1" + "src": "5120:12:1" }, { "attributes": { @@ -22043,23 +19342,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 549, + "referencedDeclaration": 437, "type": "address", "value": "_Issuer" }, - "id": 604, + "id": 479, "name": "Identifier", - "src": "6067:7:1" + "src": "5135:7:1" } ], - "id": 605, + "id": 480, "name": "Assignment", - "src": "6052:22:1" + "src": "5120:22:1" } ], - "id": 606, + "id": 481, "name": "ExpressionStatement", - "src": "6052:22:1" + "src": "5120:22:1" }, { "children": [ @@ -22092,18 +19391,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 577, + "referencedDeclaration": 452, "type": "struct Identity.identity memory", "value": "NewId" }, - "id": 607, + "id": 482, "name": "Identifier", - "src": "6085:5:1" + "src": "5153:5:1" } ], - "id": 609, + "id": 484, "name": "MemberAccess", - "src": "6085:20:1" + "src": "5153:20:1" }, { "attributes": { @@ -22111,23 +19410,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 551, + "referencedDeclaration": 439, "type": "string memory", "value": "_Sign" }, - "id": 610, + "id": 485, "name": "Identifier", - "src": "6108:5:1" + "src": "5176:5:1" } ], - "id": 611, + "id": 486, "name": "Assignment", - "src": "6085:28:1" + "src": "5153:28:1" } ], - "id": 612, + "id": 487, "name": "ExpressionStatement", - "src": "6085:28:1" + "src": "5153:28:1" }, { "children": [ @@ -22160,18 +19459,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 577, + "referencedDeclaration": 452, "type": "struct Identity.identity memory", "value": "NewId" }, - "id": 613, + "id": 488, "name": "Identifier", - "src": "6124:5:1" + "src": "5192:5:1" } ], - "id": 615, + "id": 490, "name": "MemberAccess", - "src": "6124:21:1" + "src": "5192:21:1" }, { "attributes": { @@ -22186,19 +19485,19 @@ "type": "literal_string \"Pending\"", "value": "Pending" }, - "id": 616, + "id": 491, "name": "Literal", - "src": "6148:9:1" + "src": "5216:9:1" } ], - "id": 617, + "id": 492, "name": "Assignment", - "src": "6124:33:1" + "src": "5192:33:1" } ], - "id": 618, + "id": 493, "name": "ExpressionStatement", - "src": "6124:33:1" + "src": "5192:33:1" }, { "children": [ @@ -22255,9 +19554,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 619, + "id": 494, "name": "Identifier", - "src": "6168:10:1" + "src": "5236:10:1" }, { "attributes": { @@ -22277,47 +19576,127 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 620, + "id": 495, "name": "Identifier", - "src": "6179:3:1" + "src": "5247:3:1" } ], - "id": 621, + "id": 496, "name": "MemberAccess", - "src": "6179:10:1" + "src": "5247:10:1" } ], - "id": 622, + "id": 497, "name": "IndexAccess", - "src": "6168:22:1" + "src": "5236:22:1" } ], - "id": 623, + "id": 498, "name": "MemberAccess", - "src": "6168:26:1" + "src": "5236:26:1" }, { "attributes": { "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 553, - "type": "uint256", - "value": "_IdNum" + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "operator": "++", + "prefix": false, + "type": "uint256" }, - "id": 624, - "name": "Identifier", - "src": "6195:6:1" + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "member_name": "IdCount", + "referencedDeclaration": 56, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.user storage ref" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 104, + "type": "mapping(address => struct Identity.user storage ref)", + "value": "UserDetail" + }, + "id": 499, + "name": "Identifier", + "src": "5263:10:1" + }, + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" + }, + "id": 500, + "name": "Identifier", + "src": "5274:3:1" + } + ], + "id": 501, + "name": "MemberAccess", + "src": "5274:10:1" + } + ], + "id": 502, + "name": "IndexAccess", + "src": "5263:22:1" + } + ], + "id": 503, + "name": "MemberAccess", + "src": "5263:30:1" + } + ], + "id": 504, + "name": "UnaryOperation", + "src": "5263:32:1" } ], - "id": 625, + "id": 505, "name": "IndexAccess", - "src": "6168:34:1" + "src": "5236:60:1" }, { "attributes": { @@ -22325,28 +19704,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 577, + "referencedDeclaration": 452, "type": "struct Identity.identity memory", "value": "NewId" }, - "id": 626, + "id": 506, "name": "Identifier", - "src": "6205:5:1" + "src": "5299:5:1" } ], - "id": 627, + "id": 507, "name": "Assignment", - "src": "6168:42:1" + "src": "5236:68:1" } ], - "id": 628, + "id": 508, "name": "ExpressionStatement", - "src": "6168:42:1" + "src": "5236:68:1" }, { "attributes": { "assignments": [ - 630 + 510 ], "initialValue": null }, @@ -22355,7 +19734,7 @@ "attributes": { "constant": false, "name": "NewRequest", - "scope": 664, + "scope": 544, "stateVariable": false, "storageLocation": "memory", "type": "struct Identity.verifyIdRequest", @@ -22370,19 +19749,19 @@ "referencedDeclaration": 68, "type": "struct Identity.verifyIdRequest" }, - "id": 629, + "id": 509, "name": "UserDefinedTypeName", - "src": "6264:15:1" + "src": "5358:15:1" } ], - "id": 630, + "id": 510, "name": "VariableDeclaration", - "src": "6264:33:1" + "src": "5358:33:1" } ], - "id": 631, + "id": 511, "name": "VariableDeclarationStatement", - "src": "6264:33:1" + "src": "5358:33:1" }, { "children": [ @@ -22415,18 +19794,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 630, + "referencedDeclaration": 510, "type": "struct Identity.verifyIdRequest memory", "value": "NewRequest" }, - "id": 632, + "id": 512, "name": "Identifier", - "src": "6308:10:1" + "src": "5402:10:1" } ], - "id": 634, + "id": 514, "name": "MemberAccess", - "src": "6308:16:1" + "src": "5402:16:1" }, { "attributes": { @@ -22446,28 +19825,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 635, + "id": 515, "name": "Identifier", - "src": "6327:3:1" + "src": "5421:3:1" } ], - "id": 636, + "id": 516, "name": "MemberAccess", - "src": "6327:10:1" + "src": "5421:10:1" } ], - "id": 637, + "id": 517, "name": "Assignment", - "src": "6308:29:1" + "src": "5402:29:1" } ], - "id": 638, + "id": 518, "name": "ExpressionStatement", - "src": "6308:29:1" + "src": "5402:29:1" }, { "children": [ @@ -22500,18 +19879,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 630, + "referencedDeclaration": 510, "type": "struct Identity.verifyIdRequest memory", "value": "NewRequest" }, - "id": 639, + "id": 519, "name": "Identifier", - "src": "6348:10:1" + "src": "5442:10:1" } ], - "id": 641, + "id": 521, "name": "MemberAccess", - "src": "6348:15:1" + "src": "5442:15:1" }, { "attributes": { @@ -22519,23 +19898,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 555, + "referencedDeclaration": 441, "type": "string memory", "value": "_IssuerHash" }, - "id": 642, + "id": 522, "name": "Identifier", - "src": "6366:11:1" + "src": "5460:11:1" } ], - "id": 643, + "id": 523, "name": "Assignment", - "src": "6348:29:1" + "src": "5442:29:1" } ], - "id": 644, + "id": 524, "name": "ExpressionStatement", - "src": "6348:29:1" + "src": "5442:29:1" }, { "children": [ @@ -22568,18 +19947,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 630, + "referencedDeclaration": 510, "type": "struct Identity.verifyIdRequest memory", "value": "NewRequest" }, - "id": 645, + "id": 525, "name": "Identifier", - "src": "6388:10:1" + "src": "5482:10:1" } ], - "id": 647, + "id": 527, "name": "MemberAccess", - "src": "6388:17:1" + "src": "5482:17:1" }, { "attributes": { @@ -22594,19 +19973,19 @@ "type": "int_const 1", "value": "1" }, - "id": 648, + "id": 528, "name": "Literal", - "src": "6408:1:1" + "src": "5502:1:1" } ], - "id": 649, + "id": 529, "name": "Assignment", - "src": "6388:21:1" + "src": "5482:21:1" } ], - "id": 650, + "id": 530, "name": "ExpressionStatement", - "src": "6388:21:1" + "src": "5482:21:1" }, { "children": [ @@ -22663,9 +20042,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 651, + "id": 531, "name": "Identifier", - "src": "6420:12:1" + "src": "5514:12:1" }, { "attributes": { @@ -22673,23 +20052,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 549, + "referencedDeclaration": 437, "type": "address", "value": "_Issuer" }, - "id": 652, + "id": 532, "name": "Identifier", - "src": "6433:7:1" + "src": "5527:7:1" } ], - "id": 653, + "id": 533, "name": "IndexAccess", - "src": "6420:21:1" + "src": "5514:21:1" } ], - "id": 654, + "id": 534, "name": "MemberAccess", - "src": "6420:29:1" + "src": "5514:29:1" }, { "attributes": { @@ -22735,9 +20114,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 655, + "id": 535, "name": "Identifier", - "src": "6450:12:1" + "src": "5544:12:1" }, { "attributes": { @@ -22745,33 +20124,33 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 549, + "referencedDeclaration": 437, "type": "address", "value": "_Issuer" }, - "id": 656, + "id": 536, "name": "Identifier", - "src": "6463:7:1" + "src": "5557:7:1" } ], - "id": 657, + "id": 537, "name": "IndexAccess", - "src": "6450:21:1" + "src": "5544:21:1" } ], - "id": 658, + "id": 538, "name": "MemberAccess", - "src": "6450:30:1" + "src": "5544:30:1" } ], - "id": 659, + "id": 539, "name": "UnaryOperation", - "src": "6450:32:1" + "src": "5544:32:1" } ], - "id": 660, + "id": 540, "name": "IndexAccess", - "src": "6420:63:1" + "src": "5514:63:1" }, { "attributes": { @@ -22779,33 +20158,33 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 630, + "referencedDeclaration": 510, "type": "struct Identity.verifyIdRequest memory", "value": "NewRequest" }, - "id": 661, + "id": 541, "name": "Identifier", - "src": "6486:10:1" + "src": "5580:10:1" } ], - "id": 662, + "id": 542, "name": "Assignment", - "src": "6420:76:1" + "src": "5514:76:1" } ], - "id": 663, + "id": 543, "name": "ExpressionStatement", - "src": "6420:76:1" + "src": "5514:76:1" } ], - "id": 664, + "id": 544, "name": "Block", - "src": "5800:704:1" + "src": "4960:638:1" } ], - "id": 665, + "id": 545, "name": "FunctionDefinition", - "src": "5632:872:1" + "src": "4810:788:1" }, { "attributes": { @@ -22814,7 +20193,7 @@ "isConstructor": false, "kind": "function", "name": "deleteId", - "scope": 1090, + "scope": 1006, "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -22826,7 +20205,7 @@ "attributes": { "constant": false, "name": "_IdNum", - "scope": 743, + "scope": 623, "stateVariable": false, "storageLocation": "default", "type": "uint256", @@ -22839,19 +20218,19 @@ "name": "uint", "type": "uint256" }, - "id": 666, + "id": 546, "name": "ElementaryTypeName", - "src": "6556:4:1" + "src": "5650:4:1" } ], - "id": 667, + "id": 547, "name": "VariableDeclaration", - "src": "6556:11:1" + "src": "5650:11:1" } ], - "id": 668, + "id": 548, "name": "ParameterList", - "src": "6555:13:1" + "src": "5649:13:1" }, { "attributes": { @@ -22860,9 +20239,9 @@ ] }, "children": [], - "id": 673, + "id": 553, "name": "ParameterList", - "src": "6599:0:1" + "src": "5693:0:1" }, { "children": [ @@ -22876,9 +20255,9 @@ "type": "modifier (address)", "value": "registered" }, - "id": 669, + "id": 549, "name": "Identifier", - "src": "6569:10:1" + "src": "5663:10:1" }, { "attributes": { @@ -22898,23 +20277,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 670, + "id": 550, "name": "Identifier", - "src": "6580:3:1" + "src": "5674:3:1" } ], - "id": 671, + "id": 551, "name": "MemberAccess", - "src": "6580:10:1" + "src": "5674:10:1" } ], - "id": 672, + "id": 552, "name": "ModifierInvocation", - "src": "6569:22:1" + "src": "5663:22:1" }, { "children": [ @@ -22948,16 +20327,16 @@ } ], "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, + "referencedDeclaration": 1025, "type": "function (bool,string memory) pure", "value": "require" }, - "id": 674, + "id": 554, "name": "Identifier", - "src": "6610:7:1" + "src": "5704:7:1" }, { "attributes": { @@ -22980,13 +20359,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 667, + "referencedDeclaration": 547, "type": "uint256", "value": "_IdNum" }, - "id": 675, + "id": 555, "name": "Identifier", - "src": "6618:6:1" + "src": "5712:6:1" }, { "attributes": { @@ -23020,9 +20399,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 676, + "id": 556, "name": "Identifier", - "src": "6627:10:1" + "src": "5721:10:1" }, { "attributes": { @@ -23042,33 +20421,33 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 677, + "id": 557, "name": "Identifier", - "src": "6638:3:1" + "src": "5732:3:1" } ], - "id": 678, + "id": 558, "name": "MemberAccess", - "src": "6638:10:1" + "src": "5732:10:1" } ], - "id": 679, + "id": 559, "name": "IndexAccess", - "src": "6627:22:1" + "src": "5721:22:1" } ], - "id": 680, + "id": 560, "name": "MemberAccess", - "src": "6627:30:1" + "src": "5721:30:1" } ], - "id": 681, + "id": 561, "name": "BinaryOperation", - "src": "6618:39:1" + "src": "5712:39:1" }, { "attributes": { @@ -23083,26 +20462,26 @@ "type": "literal_string \"Id does not Exist\"", "value": "Id does not Exist" }, - "id": 682, + "id": 562, "name": "Literal", - "src": "6661:19:1" + "src": "5755:19:1" } ], - "id": 683, + "id": 563, "name": "FunctionCall", - "src": "6610:71:1" + "src": "5704:71:1" } ], - "id": 684, + "id": 564, "name": "ExpressionStatement", - "src": "6610:71:1" + "src": "5704:71:1" }, { "children": [ { "attributes": { "assignments": [ - 686 + 566 ] }, "children": [ @@ -23110,7 +20489,7 @@ "attributes": { "constant": false, "name": "i", - "scope": 719, + "scope": 599, "stateVariable": false, "storageLocation": "default", "type": "uint256", @@ -23123,14 +20502,14 @@ "name": "uint", "type": "uint256" }, - "id": 685, + "id": 565, "name": "ElementaryTypeName", - "src": "6698:4:1" + "src": "5792:4:1" } ], - "id": 686, + "id": 566, "name": "VariableDeclaration", - "src": "6698:6:1" + "src": "5792:6:1" }, { "attributes": { @@ -23138,18 +20517,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 667, + "referencedDeclaration": 547, "type": "uint256", "value": "_IdNum" }, - "id": 687, + "id": 567, "name": "Identifier", - "src": "6707:6:1" + "src": "5801:6:1" } ], - "id": 688, + "id": 568, "name": "VariableDeclarationStatement", - "src": "6698:15:1" + "src": "5792:15:1" }, { "attributes": { @@ -23172,13 +20551,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 686, + "referencedDeclaration": 566, "type": "uint256", "value": "i" }, - "id": 689, + "id": 569, "name": "Identifier", - "src": "6715:1:1" + "src": "5809:1:1" }, { "attributes": { @@ -23227,9 +20606,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 690, + "id": 570, "name": "Identifier", - "src": "6717:10:1" + "src": "5811:10:1" }, { "attributes": { @@ -23249,28 +20628,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 691, + "id": 571, "name": "Identifier", - "src": "6728:3:1" + "src": "5822:3:1" } ], - "id": 692, + "id": 572, "name": "MemberAccess", - "src": "6728:10:1" + "src": "5822:10:1" } ], - "id": 693, + "id": 573, "name": "IndexAccess", - "src": "6717:22:1" + "src": "5811:22:1" } ], - "id": 694, + "id": 574, "name": "MemberAccess", - "src": "6717:30:1" + "src": "5811:30:1" }, { "attributes": { @@ -23285,19 +20664,19 @@ "type": "int_const 1", "value": "1" }, - "id": 695, + "id": 575, "name": "Literal", - "src": "6748:1:1" + "src": "5842:1:1" } ], - "id": 696, + "id": 576, "name": "BinaryOperation", - "src": "6717:32:1" + "src": "5811:32:1" } ], - "id": 697, + "id": 577, "name": "BinaryOperation", - "src": "6715:34:1" + "src": "5809:34:1" }, { "children": [ @@ -23319,23 +20698,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 686, + "referencedDeclaration": 566, "type": "uint256", "value": "i" }, - "id": 698, + "id": 578, "name": "Identifier", - "src": "6752:1:1" + "src": "5846:1:1" } ], - "id": 699, + "id": 579, "name": "UnaryOperation", - "src": "6752:3:1" + "src": "5846:3:1" } ], - "id": 700, + "id": 580, "name": "ExpressionStatement", - "src": "6752:3:1" + "src": "5846:3:1" }, { "children": [ @@ -23392,9 +20771,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 701, + "id": 581, "name": "Identifier", - "src": "6766:10:1" + "src": "5860:10:1" }, { "attributes": { @@ -23414,28 +20793,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 702, + "id": 582, "name": "Identifier", - "src": "6777:3:1" + "src": "5871:3:1" } ], - "id": 703, + "id": 583, "name": "MemberAccess", - "src": "6777:10:1" + "src": "5871:10:1" } ], - "id": 704, + "id": 584, "name": "IndexAccess", - "src": "6766:22:1" + "src": "5860:22:1" } ], - "id": 705, + "id": 585, "name": "MemberAccess", - "src": "6766:26:1" + "src": "5860:26:1" }, { "attributes": { @@ -23443,18 +20822,18 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 686, + "referencedDeclaration": 566, "type": "uint256", "value": "i" }, - "id": 706, + "id": 586, "name": "Identifier", - "src": "6793:1:1" + "src": "5887:1:1" } ], - "id": 707, + "id": 587, "name": "IndexAccess", - "src": "6766:29:1" + "src": "5860:29:1" }, { "attributes": { @@ -23498,9 +20877,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 708, + "id": 588, "name": "Identifier", - "src": "6798:10:1" + "src": "5892:10:1" }, { "attributes": { @@ -23520,28 +20899,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 709, + "id": 589, "name": "Identifier", - "src": "6809:3:1" + "src": "5903:3:1" } ], - "id": 710, + "id": 590, "name": "MemberAccess", - "src": "6809:10:1" + "src": "5903:10:1" } ], - "id": 711, + "id": 591, "name": "IndexAccess", - "src": "6798:22:1" + "src": "5892:22:1" } ], - "id": 712, + "id": 592, "name": "MemberAccess", - "src": "6798:26:1" + "src": "5892:26:1" }, { "attributes": { @@ -23564,13 +20943,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 686, + "referencedDeclaration": 566, "type": "uint256", "value": "i" }, - "id": 713, + "id": 593, "name": "Identifier", - "src": "6825:1:1" + "src": "5919:1:1" }, { "attributes": { @@ -23585,34 +20964,34 @@ "type": "int_const 1", "value": "1" }, - "id": 714, + "id": 594, "name": "Literal", - "src": "6827:1:1" + "src": "5921:1:1" } ], - "id": 715, + "id": 595, "name": "BinaryOperation", - "src": "6825:3:1" + "src": "5919:3:1" } ], - "id": 716, + "id": 596, "name": "IndexAccess", - "src": "6798:31:1" + "src": "5892:31:1" } ], - "id": 717, + "id": 597, "name": "Assignment", - "src": "6766:63:1" + "src": "5860:63:1" } ], - "id": 718, + "id": 598, "name": "ExpressionStatement", - "src": "6766:63:1" + "src": "5860:63:1" } ], - "id": 719, + "id": 599, "name": "ForStatement", - "src": "6694:135:1" + "src": "5788:135:1" }, { "children": [ @@ -23670,9 +21049,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 720, + "id": 600, "name": "Identifier", - "src": "6849:10:1" + "src": "5943:10:1" }, { "attributes": { @@ -23692,28 +21071,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 721, + "id": 601, "name": "Identifier", - "src": "6860:3:1" + "src": "5954:3:1" } ], - "id": 722, + "id": 602, "name": "MemberAccess", - "src": "6860:10:1" + "src": "5954:10:1" } ], - "id": 723, + "id": 603, "name": "IndexAccess", - "src": "6849:22:1" + "src": "5943:22:1" } ], - "id": 724, + "id": 604, "name": "MemberAccess", - "src": "6849:26:1" + "src": "5943:26:1" }, { "attributes": { @@ -23762,9 +21141,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 725, + "id": 605, "name": "Identifier", - "src": "6876:10:1" + "src": "5970:10:1" }, { "attributes": { @@ -23784,28 +21163,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 726, + "id": 606, "name": "Identifier", - "src": "6887:3:1" + "src": "5981:3:1" } ], - "id": 727, + "id": 607, "name": "MemberAccess", - "src": "6887:10:1" + "src": "5981:10:1" } ], - "id": 728, + "id": 608, "name": "IndexAccess", - "src": "6876:22:1" + "src": "5970:22:1" } ], - "id": 729, + "id": 609, "name": "MemberAccess", - "src": "6876:30:1" + "src": "5970:30:1" }, { "attributes": { @@ -23820,29 +21199,29 @@ "type": "int_const 1", "value": "1" }, - "id": 730, + "id": 610, "name": "Literal", - "src": "6907:1:1" + "src": "6001:1:1" } ], - "id": 731, + "id": 611, "name": "BinaryOperation", - "src": "6876:32:1" + "src": "5970:32:1" } ], - "id": 732, + "id": 612, "name": "IndexAccess", - "src": "6849:60:1" + "src": "5943:60:1" } ], - "id": 733, + "id": 613, "name": "UnaryOperation", - "src": "6842:67:1" + "src": "5936:67:1" } ], - "id": 734, + "id": 614, "name": "ExpressionStatement", - "src": "6842:67:1" + "src": "5936:67:1" }, { "children": [ @@ -23890,9 +21269,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 735, + "id": 615, "name": "Identifier", - "src": "6920:10:1" + "src": "6014:10:1" }, { "attributes": { @@ -23912,48 +21291,48 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 736, + "id": 616, "name": "Identifier", - "src": "6931:3:1" + "src": "6025:3:1" } ], - "id": 737, + "id": 617, "name": "MemberAccess", - "src": "6931:10:1" + "src": "6025:10:1" } ], - "id": 738, + "id": 618, "name": "IndexAccess", - "src": "6920:22:1" + "src": "6014:22:1" } ], - "id": 739, + "id": 619, "name": "MemberAccess", - "src": "6920:30:1" + "src": "6014:30:1" } ], - "id": 740, + "id": 620, "name": "UnaryOperation", - "src": "6920:32:1" + "src": "6014:32:1" } ], - "id": 741, + "id": 621, "name": "ExpressionStatement", - "src": "6920:32:1" + "src": "6014:32:1" } ], - "id": 742, + "id": 622, "name": "Block", - "src": "6599:361:1" + "src": "5693:361:1" } ], - "id": 743, + "id": 623, "name": "FunctionDefinition", - "src": "6538:422:1" + "src": "5632:422:1" }, { "attributes": { @@ -23962,7 +21341,7 @@ "isConstructor": false, "kind": "function", "name": "AcceptIdRequest", - "scope": 1090, + "scope": 1006, "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -23974,7 +21353,7 @@ "attributes": { "constant": false, "name": "_ReqNo", - "scope": 888, + "scope": 769, "stateVariable": false, "storageLocation": "default", "type": "uint256", @@ -23987,20 +21366,20 @@ "name": "uint", "type": "uint256" }, - "id": 744, + "id": 624, "name": "ElementaryTypeName", - "src": "7040:4:1" + "src": "6134:4:1" } ], - "id": 745, + "id": 625, "name": "VariableDeclaration", - "src": "7040:11:1" + "src": "6134:11:1" }, { "attributes": { "constant": false, "name": "_Sign", - "scope": 888, + "scope": 769, "stateVariable": false, "storageLocation": "memory", "type": "string", @@ -24013,19 +21392,19 @@ "name": "string", "type": "string" }, - "id": 746, + "id": 626, "name": "ElementaryTypeName", - "src": "7054:6:1" + "src": "6148:6:1" } ], - "id": 747, + "id": 627, "name": "VariableDeclaration", - "src": "7054:19:1" + "src": "6148:19:1" } ], - "id": 748, + "id": 628, "name": "ParameterList", - "src": "7039:35:1" + "src": "6133:35:1" }, { "attributes": { @@ -24034,9 +21413,9 @@ ] }, "children": [], - "id": 757, + "id": 637, "name": "ParameterList", - "src": "7128:0:1" + "src": "6222:0:1" }, { "children": [ @@ -24050,9 +21429,9 @@ "type": "modifier (address)", "value": "registered" }, - "id": 749, + "id": 629, "name": "Identifier", - "src": "7088:10:1" + "src": "6182:10:1" }, { "attributes": { @@ -24072,23 +21451,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 750, + "id": 630, "name": "Identifier", - "src": "7099:3:1" + "src": "6193:3:1" } ], - "id": 751, + "id": 631, "name": "MemberAccess", - "src": "7099:10:1" + "src": "6193:10:1" } ], - "id": 752, + "id": 632, "name": "ModifierInvocation", - "src": "7088:22:1" + "src": "6182:22:1" }, { "children": [ @@ -24102,9 +21481,9 @@ "type": "modifier (address)", "value": "issue" }, - "id": 753, + "id": 633, "name": "Identifier", - "src": "7111:5:1" + "src": "6205:5:1" }, { "attributes": { @@ -24124,23 +21503,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 754, + "id": 634, "name": "Identifier", - "src": "7117:3:1" + "src": "6211:3:1" } ], - "id": 755, + "id": 635, "name": "MemberAccess", - "src": "7117:10:1" + "src": "6211:10:1" } ], - "id": 756, + "id": 636, "name": "ModifierInvocation", - "src": "7111:17:1" + "src": "6205:17:1" }, { "children": [ @@ -24174,16 +21553,16 @@ } ], "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, + "referencedDeclaration": 1025, "type": "function (bool,string memory) pure", "value": "require" }, - "id": 758, + "id": 638, "name": "Identifier", - "src": "7139:7:1" + "src": "6233:7:1" }, { "attributes": { @@ -24206,13 +21585,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 745, + "referencedDeclaration": 625, "type": "uint256", "value": "_ReqNo" }, - "id": 759, + "id": 639, "name": "Identifier", - "src": "7147:6:1" + "src": "6241:6:1" }, { "attributes": { @@ -24246,9 +21625,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 760, + "id": 640, "name": "Identifier", - "src": "7156:12:1" + "src": "6250:12:1" }, { "attributes": { @@ -24268,33 +21647,33 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 761, + "id": 641, "name": "Identifier", - "src": "7169:3:1" + "src": "6263:3:1" } ], - "id": 762, + "id": 642, "name": "MemberAccess", - "src": "7169:10:1" + "src": "6263:10:1" } ], - "id": 763, + "id": 643, "name": "IndexAccess", - "src": "7156:24:1" + "src": "6250:24:1" } ], - "id": 764, + "id": 644, "name": "MemberAccess", - "src": "7156:33:1" + "src": "6250:33:1" } ], - "id": 765, + "id": 645, "name": "BinaryOperation", - "src": "7147:42:1" + "src": "6241:42:1" }, { "attributes": { @@ -24309,19 +21688,19 @@ "type": "literal_string \"Request Not Found\"", "value": "Request Not Found" }, - "id": 766, + "id": 646, "name": "Literal", - "src": "7191:19:1" + "src": "6285:19:1" } ], - "id": 767, + "id": 647, "name": "FunctionCall", - "src": "7139:72:1" + "src": "6233:72:1" } ], - "id": 768, + "id": 648, "name": "ExpressionStatement", - "src": "7139:72:1" + "src": "6233:72:1" }, { "children": [ @@ -24353,16 +21732,16 @@ } ], "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, + "referencedDeclaration": 1025, "type": "function (bool,string memory) pure", "value": "require" }, - "id": 769, + "id": 649, "name": "Identifier", - "src": "7222:7:1" + "src": "6316:7:1" }, { "attributes": { @@ -24433,9 +21812,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 770, + "id": 650, "name": "Identifier", - "src": "7230:12:1" + "src": "6324:12:1" }, { "attributes": { @@ -24455,28 +21834,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 771, + "id": 651, "name": "Identifier", - "src": "7243:3:1" + "src": "6337:3:1" } ], - "id": 772, + "id": 652, "name": "MemberAccess", - "src": "7243:10:1" + "src": "6337:10:1" } ], - "id": 773, + "id": 653, "name": "IndexAccess", - "src": "7230:24:1" + "src": "6324:24:1" } ], - "id": 774, + "id": 654, "name": "MemberAccess", - "src": "7230:32:1" + "src": "6324:32:1" }, { "attributes": { @@ -24484,23 +21863,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 745, + "referencedDeclaration": 625, "type": "uint256", "value": "_ReqNo" }, - "id": 775, + "id": 655, "name": "Identifier", - "src": "7263:6:1" + "src": "6357:6:1" } ], - "id": 776, + "id": 656, "name": "IndexAccess", - "src": "7230:40:1" + "src": "6324:40:1" } ], - "id": 777, + "id": 657, "name": "MemberAccess", - "src": "7230:47:1" + "src": "6324:47:1" }, { "attributes": { @@ -24515,14 +21894,14 @@ "type": "int_const 1", "value": "1" }, - "id": 778, + "id": 658, "name": "Literal", - "src": "7281:1:1" + "src": "6375:1:1" } ], - "id": 779, + "id": 659, "name": "BinaryOperation", - "src": "7230:52:1" + "src": "6324:52:1" }, { "attributes": { @@ -24537,24 +21916,24 @@ "type": "literal_string \"Request Already Accepted or Rejected\"", "value": "Request Already Accepted or Rejected" }, - "id": 780, + "id": 660, "name": "Literal", - "src": "7295:38:1" + "src": "6389:38:1" } ], - "id": 781, + "id": 661, "name": "FunctionCall", - "src": "7222:112:1" + "src": "6316:112:1" } ], - "id": 782, + "id": 662, "name": "ExpressionStatement", - "src": "7222:112:1" + "src": "6316:112:1" }, { "attributes": { "assignments": [ - 784 + 664 ] }, "children": [ @@ -24562,7 +21941,7 @@ "attributes": { "constant": false, "name": "flag", - "scope": 887, + "scope": 768, "stateVariable": false, "storageLocation": "default", "type": "bool", @@ -24575,14 +21954,14 @@ "name": "bool", "type": "bool" }, - "id": 783, + "id": 663, "name": "ElementaryTypeName", - "src": "7347:4:1" + "src": "6441:4:1" } ], - "id": 784, + "id": 664, "name": "VariableDeclaration", - "src": "7347:9:1" + "src": "6441:9:1" }, { "attributes": { @@ -24597,19 +21976,19 @@ "type": "bool", "value": "false" }, - "id": 785, + "id": 665, "name": "Literal", - "src": "7359:5:1" + "src": "6453:5:1" } ], - "id": 786, + "id": 666, "name": "VariableDeclarationStatement", - "src": "7347:17:1" + "src": "6441:17:1" }, { "attributes": { "assignments": [ - 788 + 668 ] }, "children": [ @@ -24617,7 +21996,7 @@ "attributes": { "constant": false, "name": "User", - "scope": 887, + "scope": 768, "stateVariable": false, "storageLocation": "default", "type": "address", @@ -24631,14 +22010,14 @@ "stateMutability": "nonpayable", "type": "address" }, - "id": 787, + "id": 667, "name": "ElementaryTypeName", - "src": "7375:7:1" + "src": "6469:7:1" } ], - "id": 788, + "id": 668, "name": "VariableDeclaration", - "src": "7375:12:1" + "src": "6469:12:1" }, { "attributes": { @@ -24694,9 +22073,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 789, + "id": 669, "name": "Identifier", - "src": "7390:12:1" + "src": "6484:12:1" }, { "attributes": { @@ -24716,28 +22095,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 790, + "id": 670, "name": "Identifier", - "src": "7403:3:1" + "src": "6497:3:1" } ], - "id": 791, + "id": 671, "name": "MemberAccess", - "src": "7403:10:1" + "src": "6497:10:1" } ], - "id": 792, + "id": 672, "name": "IndexAccess", - "src": "7390:24:1" + "src": "6484:24:1" } ], - "id": 793, + "id": 673, "name": "MemberAccess", - "src": "7390:32:1" + "src": "6484:32:1" }, { "attributes": { @@ -24745,35 +22124,35 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 745, + "referencedDeclaration": 625, "type": "uint256", "value": "_ReqNo" }, - "id": 794, + "id": 674, "name": "Identifier", - "src": "7423:6:1" + "src": "6517:6:1" } ], - "id": 795, + "id": 675, "name": "IndexAccess", - "src": "7390:40:1" + "src": "6484:40:1" } ], - "id": 796, + "id": 676, "name": "MemberAccess", - "src": "7390:46:1" + "src": "6484:46:1" } ], - "id": 797, + "id": 677, "name": "VariableDeclarationStatement", - "src": "7375:61:1" + "src": "6469:61:1" }, { "children": [ { "attributes": { "assignments": [ - 799 + 679 ] }, "children": [ @@ -24781,7 +22160,7 @@ "attributes": { "constant": false, "name": "i", - "scope": 868, + "scope": 748, "stateVariable": false, "storageLocation": "default", "type": "uint256", @@ -24794,14 +22173,14 @@ "name": "uint", "type": "uint256" }, - "id": 798, + "id": 678, "name": "ElementaryTypeName", - "src": "7453:4:1" + "src": "6547:4:1" } ], - "id": 799, + "id": 679, "name": "VariableDeclaration", - "src": "7453:6:1" + "src": "6547:6:1" }, { "attributes": { @@ -24816,14 +22195,14 @@ "type": "int_const 0", "value": "0" }, - "id": 800, + "id": 680, "name": "Literal", - "src": "7460:1:1" + "src": "6554:1:1" } ], - "id": 801, + "id": 681, "name": "VariableDeclarationStatement", - "src": "7453:8:1" + "src": "6547:8:1" }, { "attributes": { @@ -24846,13 +22225,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 799, + "referencedDeclaration": 679, "type": "uint256", "value": "i" }, - "id": 802, + "id": 682, "name": "Identifier", - "src": "7464:1:1" + "src": "6558:1:1" }, { "attributes": { @@ -24886,9 +22265,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 803, + "id": 683, "name": "Identifier", - "src": "7467:10:1" + "src": "6561:10:1" }, { "attributes": { @@ -24896,28 +22275,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 788, + "referencedDeclaration": 668, "type": "address", "value": "User" }, - "id": 804, + "id": 684, "name": "Identifier", - "src": "7478:4:1" + "src": "6572:4:1" } ], - "id": 805, + "id": 685, "name": "IndexAccess", - "src": "7467:16:1" + "src": "6561:16:1" } ], - "id": 806, + "id": 686, "name": "MemberAccess", - "src": "7467:24:1" + "src": "6561:24:1" } ], - "id": 807, + "id": 687, "name": "BinaryOperation", - "src": "7464:27:1" + "src": "6558:27:1" }, { "children": [ @@ -24939,23 +22318,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 799, + "referencedDeclaration": 679, "type": "uint256", "value": "i" }, - "id": 808, + "id": 688, "name": "Identifier", - "src": "7494:1:1" + "src": "6588:1:1" } ], - "id": 809, + "id": 689, "name": "UnaryOperation", - "src": "7494:3:1" + "src": "6588:3:1" } ], - "id": 810, + "id": 690, "name": "ExpressionStatement", - "src": "7494:3:1" + "src": "6588:3:1" }, { "children": [ @@ -25020,13 +22399,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1099, + "referencedDeclaration": 1015, "type": "function (bytes memory) pure returns (bytes32)", "value": "keccak256" }, - "id": 811, + "id": 691, "name": "Identifier", - "src": "7516:9:1" + "src": "6610:9:1" }, { "attributes": { @@ -25058,9 +22437,9 @@ "type": "type(bytes storage pointer)", "value": "bytes" }, - "id": 812, + "id": 692, "name": "ElementaryTypeNameExpression", - "src": "7526:5:1" + "src": "6620:5:1" }, { "attributes": { @@ -25116,9 +22495,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 813, + "id": 693, "name": "Identifier", - "src": "7532:10:1" + "src": "6626:10:1" }, { "attributes": { @@ -25126,23 +22505,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 788, + "referencedDeclaration": 668, "type": "address", "value": "User" }, - "id": 814, + "id": 694, "name": "Identifier", - "src": "7543:4:1" + "src": "6637:4:1" } ], - "id": 815, + "id": 695, "name": "IndexAccess", - "src": "7532:16:1" + "src": "6626:16:1" } ], - "id": 816, + "id": 696, "name": "MemberAccess", - "src": "7532:20:1" + "src": "6626:20:1" }, { "attributes": { @@ -25150,33 +22529,33 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 799, + "referencedDeclaration": 679, "type": "uint256", "value": "i" }, - "id": 817, + "id": 697, "name": "Identifier", - "src": "7553:1:1" + "src": "6647:1:1" } ], - "id": 818, + "id": 698, "name": "IndexAccess", - "src": "7532:23:1" + "src": "6626:23:1" } ], - "id": 819, + "id": 699, "name": "MemberAccess", - "src": "7532:28:1" + "src": "6626:28:1" } ], - "id": 820, + "id": 700, "name": "FunctionCall", - "src": "7526:35:1" + "src": "6620:35:1" } ], - "id": 821, + "id": 701, "name": "FunctionCall", - "src": "7516:46:1" + "src": "6610:46:1" }, { "attributes": { @@ -25204,13 +22583,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1099, + "referencedDeclaration": 1015, "type": "function (bytes memory) pure returns (bytes32)", "value": "keccak256" }, - "id": 822, + "id": 702, "name": "Identifier", - "src": "7566:9:1" + "src": "6660:9:1" }, { "attributes": { @@ -25242,9 +22621,9 @@ "type": "type(bytes storage pointer)", "value": "bytes" }, - "id": 823, + "id": 703, "name": "ElementaryTypeNameExpression", - "src": "7576:5:1" + "src": "6670:5:1" }, { "attributes": { @@ -25278,9 +22657,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 824, + "id": 704, "name": "Identifier", - "src": "7582:12:1" + "src": "6676:12:1" }, { "attributes": { @@ -25300,43 +22679,43 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 825, + "id": 705, "name": "Identifier", - "src": "7595:3:1" + "src": "6689:3:1" } ], - "id": 826, + "id": 706, "name": "MemberAccess", - "src": "7595:10:1" + "src": "6689:10:1" } ], - "id": 827, + "id": 707, "name": "IndexAccess", - "src": "7582:24:1" + "src": "6676:24:1" } ], - "id": 828, + "id": 708, "name": "MemberAccess", - "src": "7582:32:1" + "src": "6676:32:1" } ], - "id": 829, + "id": 709, "name": "FunctionCall", - "src": "7576:39:1" + "src": "6670:39:1" } ], - "id": 830, + "id": 710, "name": "FunctionCall", - "src": "7566:50:1" + "src": "6660:50:1" } ], - "id": 831, + "id": 711, "name": "BinaryOperation", - "src": "7516:100:1" + "src": "6610:100:1" }, { "attributes": { @@ -25379,13 +22758,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1099, + "referencedDeclaration": 1015, "type": "function (bytes memory) pure returns (bytes32)", "value": "keccak256" }, - "id": 832, + "id": 712, "name": "Identifier", - "src": "7638:9:1" + "src": "6732:9:1" }, { "attributes": { @@ -25417,9 +22796,9 @@ "type": "type(bytes storage pointer)", "value": "bytes" }, - "id": 833, + "id": 713, "name": "ElementaryTypeNameExpression", - "src": "7648:5:1" + "src": "6742:5:1" }, { "attributes": { @@ -25475,9 +22854,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 834, + "id": 714, "name": "Identifier", - "src": "7654:10:1" + "src": "6748:10:1" }, { "attributes": { @@ -25485,23 +22864,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 788, + "referencedDeclaration": 668, "type": "address", "value": "User" }, - "id": 835, + "id": 715, "name": "Identifier", - "src": "7665:4:1" + "src": "6759:4:1" } ], - "id": 836, + "id": 716, "name": "IndexAccess", - "src": "7654:16:1" + "src": "6748:16:1" } ], - "id": 837, + "id": 717, "name": "MemberAccess", - "src": "7654:20:1" + "src": "6748:20:1" }, { "attributes": { @@ -25509,33 +22888,33 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 799, + "referencedDeclaration": 679, "type": "uint256", "value": "i" }, - "id": 838, + "id": 718, "name": "Identifier", - "src": "7675:1:1" + "src": "6769:1:1" } ], - "id": 839, + "id": 719, "name": "IndexAccess", - "src": "7654:23:1" + "src": "6748:23:1" } ], - "id": 840, + "id": 720, "name": "MemberAccess", - "src": "7654:39:1" + "src": "6748:39:1" } ], - "id": 841, + "id": 721, "name": "FunctionCall", - "src": "7648:46:1" + "src": "6742:46:1" } ], - "id": 842, + "id": 722, "name": "FunctionCall", - "src": "7638:57:1" + "src": "6732:57:1" }, { "attributes": { @@ -25563,13 +22942,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1099, + "referencedDeclaration": 1015, "type": "function (bytes memory) pure returns (bytes32)", "value": "keccak256" }, - "id": 843, + "id": 723, "name": "Identifier", - "src": "7699:9:1" + "src": "6793:9:1" }, { "attributes": { @@ -25601,9 +22980,9 @@ "type": "type(bytes storage pointer)", "value": "bytes" }, - "id": 844, + "id": 724, "name": "ElementaryTypeNameExpression", - "src": "7709:5:1" + "src": "6803:5:1" }, { "attributes": { @@ -25618,29 +22997,29 @@ "type": "literal_string \"Pending\"", "value": "Pending" }, - "id": 845, + "id": 725, "name": "Literal", - "src": "7715:9:1" + "src": "6809:9:1" } ], - "id": 846, + "id": 726, "name": "FunctionCall", - "src": "7709:16:1" + "src": "6803:16:1" } ], - "id": 847, + "id": 727, "name": "FunctionCall", - "src": "7699:27:1" + "src": "6793:27:1" } ], - "id": 848, + "id": 728, "name": "BinaryOperation", - "src": "7638:88:1" + "src": "6732:88:1" } ], - "id": 849, + "id": 729, "name": "BinaryOperation", - "src": "7516:210:1" + "src": "6610:210:1" }, { "children": [ @@ -25711,9 +23090,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 850, + "id": 730, "name": "Identifier", - "src": "7746:10:1" + "src": "6840:10:1" }, { "attributes": { @@ -25721,23 +23100,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 788, + "referencedDeclaration": 668, "type": "address", "value": "User" }, - "id": 851, + "id": 731, "name": "Identifier", - "src": "7757:4:1" + "src": "6851:4:1" } ], - "id": 852, + "id": 732, "name": "IndexAccess", - "src": "7746:16:1" + "src": "6840:16:1" } ], - "id": 853, + "id": 733, "name": "MemberAccess", - "src": "7746:20:1" + "src": "6840:20:1" }, { "attributes": { @@ -25745,23 +23124,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 799, + "referencedDeclaration": 679, "type": "uint256", "value": "i" }, - "id": 854, + "id": 734, "name": "Identifier", - "src": "7767:1:1" + "src": "6861:1:1" } ], - "id": 855, + "id": 735, "name": "IndexAccess", - "src": "7746:23:1" + "src": "6840:23:1" } ], - "id": 856, + "id": 736, "name": "MemberAccess", - "src": "7746:39:1" + "src": "6840:39:1" }, { "attributes": { @@ -25769,23 +23148,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 747, + "referencedDeclaration": 627, "type": "string memory", "value": "_Sign" }, - "id": 857, + "id": 737, "name": "Identifier", - "src": "7788:5:1" + "src": "6882:5:1" } ], - "id": 858, + "id": 738, "name": "Assignment", - "src": "7746:47:1" + "src": "6840:47:1" } ], - "id": 859, + "id": 739, "name": "ExpressionStatement", - "src": "7746:47:1" + "src": "6840:47:1" }, { "children": [ @@ -25806,13 +23185,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 784, + "referencedDeclaration": 664, "type": "bool", "value": "flag" }, - "id": 860, + "id": 740, "name": "Identifier", - "src": "7812:4:1" + "src": "6906:4:1" }, { "attributes": { @@ -25827,163 +23206,169 @@ "type": "bool", "value": "true" }, - "id": 861, + "id": 741, "name": "Literal", - "src": "7819:4:1" + "src": "6913:4:1" } ], - "id": 862, + "id": 742, "name": "Assignment", - "src": "7812:11:1" + "src": "6906:11:1" } ], - "id": 863, + "id": 743, "name": "ExpressionStatement", - "src": "7812:11:1" + "src": "6906:11:1" }, { - "id": 864, + "id": 744, "name": "Break", - "src": "7842:5:1" + "src": "6936:5:1" } ], - "id": 865, + "id": 745, "name": "Block", - "src": "7727:136:1" + "src": "6821:136:1" } ], - "id": 866, + "id": 746, "name": "IfStatement", - "src": "7513:350:1" + "src": "6607:350:1" } ], - "id": 867, + "id": 747, "name": "Block", - "src": "7498:376:1" + "src": "6592:376:1" } ], - "id": 868, + "id": 748, "name": "ForStatement", - "src": "7449:425:1" + "src": "6543:425:1" }, { + "attributes": { + "falseBody": null + }, "children": [ { "attributes": { "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, "isConstant": false, "isLValue": false, "isPure": false, - "isStructConstructorCall": false, "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false + "operator": "==", + "type": "bool" }, "children": [ { "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_179851dcf74cd84bf02ee82ea38f04eba7d1ea987c1c4f01660b225766cc2617", - "typeString": "literal_string \"User Identity Not Found\"" - } - ], + "argumentTypes": null, "overloadedDeclarations": [ - 1108, - 1109 + null ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" + "referencedDeclaration": 664, + "type": "bool", + "value": "flag" }, - "id": 869, + "id": 749, "name": "Identifier", - "src": "7884:7:1" + "src": "6981:4:1" }, { "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, + "hexvalue": "66616c7365", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "bool", + "type": "bool", + "value": "false" + }, + "id": 750, + "name": "Literal", + "src": "6989:5:1" + } + ], + "id": 751, + "name": "BinaryOperation", + "src": "6981:13:1" + }, + { + "children": [ + { + "attributes": { + "argumentTypes": null, "isConstant": false, "isLValue": false, "isPure": false, + "isStructConstructorCall": false, "lValueRequested": false, - "operator": "==", - "type": "bool" + "names": [ + null + ], + "type": "tuple()", + "type_conversion": false }, "children": [ { "attributes": { - "argumentTypes": null, + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_179851dcf74cd84bf02ee82ea38f04eba7d1ea987c1c4f01660b225766cc2617", + "typeString": "literal_string \"User Identity Not Found\"" + } + ], "overloadedDeclarations": [ - null + 1026, + 1027 ], - "referencedDeclaration": 784, - "type": "bool", - "value": "flag" + "referencedDeclaration": 1027, + "type": "function (string memory) pure", + "value": "revert" }, - "id": 870, + "id": 752, "name": "Identifier", - "src": "7892:4:1" + "src": "7005:6:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "74727565", + "hexvalue": "55736572204964656e74697479204e6f7420466f756e64", "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "subdenomination": null, - "token": "bool", - "type": "bool", - "value": "true" + "token": "string", + "type": "literal_string \"User Identity Not Found\"", + "value": "User Identity Not Found" }, - "id": 871, + "id": 753, "name": "Literal", - "src": "7900:4:1" + "src": "7012:25:1" } ], - "id": 872, - "name": "BinaryOperation", - "src": "7892:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "55736572204964656e74697479204e6f7420466f756e64", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"User Identity Not Found\"", - "value": "User Identity Not Found" - }, - "id": 873, - "name": "Literal", - "src": "7906:25:1" + "id": 754, + "name": "FunctionCall", + "src": "7005:33:1" } ], - "id": 874, - "name": "FunctionCall", - "src": "7884:48:1" + "id": 755, + "name": "ExpressionStatement", + "src": "7005:33:1" } ], - "id": 875, - "name": "ExpressionStatement", - "src": "7884:48:1" + "id": 756, + "name": "IfStatement", + "src": "6978:60:1" }, { "children": [ @@ -26052,9 +23437,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 876, + "id": 757, "name": "Identifier", - "src": "7945:12:1" + "src": "7051:12:1" }, { "attributes": { @@ -26074,28 +23459,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 877, + "id": 758, "name": "Identifier", - "src": "7958:3:1" + "src": "7064:3:1" } ], - "id": 878, + "id": 759, "name": "MemberAccess", - "src": "7958:10:1" + "src": "7064:10:1" } ], - "id": 879, + "id": 760, "name": "IndexAccess", - "src": "7945:24:1" + "src": "7051:24:1" } ], - "id": 880, + "id": 761, "name": "MemberAccess", - "src": "7945:32:1" + "src": "7051:32:1" }, { "attributes": { @@ -26103,23 +23488,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 745, + "referencedDeclaration": 625, "type": "uint256", "value": "_ReqNo" }, - "id": 881, + "id": 762, "name": "Identifier", - "src": "7978:6:1" + "src": "7084:6:1" } ], - "id": 882, + "id": 763, "name": "IndexAccess", - "src": "7945:40:1" + "src": "7051:40:1" } ], - "id": 883, + "id": 764, "name": "MemberAccess", - "src": "7945:47:1" + "src": "7051:47:1" }, { "attributes": { @@ -26134,29 +23519,29 @@ "type": "int_const 2", "value": "2" }, - "id": 884, + "id": 765, "name": "Literal", - "src": "7995:1:1" + "src": "7101:1:1" } ], - "id": 885, + "id": 766, "name": "Assignment", - "src": "7945:51:1" + "src": "7051:51:1" } ], - "id": 886, + "id": 767, "name": "ExpressionStatement", - "src": "7945:51:1" + "src": "7051:51:1" } ], - "id": 887, + "id": 768, "name": "Block", - "src": "7128:876:1" + "src": "6222:888:1" } ], - "id": 888, + "id": 769, "name": "FunctionDefinition", - "src": "7015:989:1" + "src": "6109:1001:1" }, { "attributes": { @@ -26165,7 +23550,7 @@ "isConstructor": false, "kind": "function", "name": "RejectIdRequest", - "scope": 1090, + "scope": 1006, "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -26177,7 +23562,7 @@ "attributes": { "constant": false, "name": "_ReqNo", - "scope": 1031, + "scope": 905, "stateVariable": false, "storageLocation": "default", "type": "uint256", @@ -26190,19 +23575,19 @@ "name": "uint", "type": "uint256" }, - "id": 889, + "id": 770, "name": "ElementaryTypeName", - "src": "8084:4:1" + "src": "7190:4:1" } ], - "id": 890, + "id": 771, "name": "VariableDeclaration", - "src": "8084:11:1" + "src": "7190:11:1" } ], - "id": 891, + "id": 772, "name": "ParameterList", - "src": "8083:13:1" + "src": "7189:13:1" }, { "attributes": { @@ -26211,9 +23596,9 @@ ] }, "children": [], - "id": 900, + "id": 781, "name": "ParameterList", - "src": "8144:0:1" + "src": "7250:0:1" }, { "children": [ @@ -26227,9 +23612,9 @@ "type": "modifier (address)", "value": "registered" }, - "id": 892, + "id": 773, "name": "Identifier", - "src": "8104:10:1" + "src": "7210:10:1" }, { "attributes": { @@ -26249,23 +23634,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 893, + "id": 774, "name": "Identifier", - "src": "8115:3:1" + "src": "7221:3:1" } ], - "id": 894, + "id": 775, "name": "MemberAccess", - "src": "8115:10:1" + "src": "7221:10:1" } ], - "id": 895, + "id": 776, "name": "ModifierInvocation", - "src": "8104:22:1" + "src": "7210:22:1" }, { "children": [ @@ -26279,9 +23664,9 @@ "type": "modifier (address)", "value": "issue" }, - "id": 896, + "id": 777, "name": "Identifier", - "src": "8127:5:1" + "src": "7233:5:1" }, { "attributes": { @@ -26301,23 +23686,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 897, + "id": 778, "name": "Identifier", - "src": "8133:3:1" + "src": "7239:3:1" } ], - "id": 898, + "id": 779, "name": "MemberAccess", - "src": "8133:10:1" + "src": "7239:10:1" } ], - "id": 899, + "id": 780, "name": "ModifierInvocation", - "src": "8127:17:1" + "src": "7233:17:1" }, { "children": [ @@ -26351,16 +23736,16 @@ } ], "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, + "referencedDeclaration": 1025, "type": "function (bool,string memory) pure", "value": "require" }, - "id": 901, + "id": 782, "name": "Identifier", - "src": "8155:7:1" + "src": "7261:7:1" }, { "attributes": { @@ -26383,13 +23768,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 890, + "referencedDeclaration": 771, "type": "uint256", "value": "_ReqNo" }, - "id": 902, + "id": 783, "name": "Identifier", - "src": "8163:6:1" + "src": "7269:6:1" }, { "attributes": { @@ -26423,9 +23808,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 903, + "id": 784, "name": "Identifier", - "src": "8172:12:1" + "src": "7278:12:1" }, { "attributes": { @@ -26445,33 +23830,33 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 904, + "id": 785, "name": "Identifier", - "src": "8185:3:1" + "src": "7291:3:1" } ], - "id": 905, + "id": 786, "name": "MemberAccess", - "src": "8185:10:1" + "src": "7291:10:1" } ], - "id": 906, + "id": 787, "name": "IndexAccess", - "src": "8172:24:1" + "src": "7278:24:1" } ], - "id": 907, + "id": 788, "name": "MemberAccess", - "src": "8172:33:1" + "src": "7278:33:1" } ], - "id": 908, + "id": 789, "name": "BinaryOperation", - "src": "8163:42:1" + "src": "7269:42:1" }, { "attributes": { @@ -26486,19 +23871,19 @@ "type": "literal_string \"Request Not Found\"", "value": "Request Not Found" }, - "id": 909, + "id": 790, "name": "Literal", - "src": "8207:19:1" + "src": "7313:19:1" } ], - "id": 910, + "id": 791, "name": "FunctionCall", - "src": "8155:72:1" + "src": "7261:72:1" } ], - "id": 911, + "id": 792, "name": "ExpressionStatement", - "src": "8155:72:1" + "src": "7261:72:1" }, { "children": [ @@ -26530,16 +23915,16 @@ } ], "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, + "referencedDeclaration": 1025, "type": "function (bool,string memory) pure", "value": "require" }, - "id": 912, + "id": 793, "name": "Identifier", - "src": "8238:7:1" + "src": "7344:7:1" }, { "attributes": { @@ -26610,9 +23995,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 913, + "id": 794, "name": "Identifier", - "src": "8246:12:1" + "src": "7352:12:1" }, { "attributes": { @@ -26632,28 +24017,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 914, + "id": 795, "name": "Identifier", - "src": "8259:3:1" + "src": "7365:3:1" } ], - "id": 915, + "id": 796, "name": "MemberAccess", - "src": "8259:10:1" + "src": "7365:10:1" } ], - "id": 916, + "id": 797, "name": "IndexAccess", - "src": "8246:24:1" + "src": "7352:24:1" } ], - "id": 917, + "id": 798, "name": "MemberAccess", - "src": "8246:32:1" + "src": "7352:32:1" }, { "attributes": { @@ -26661,23 +24046,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 890, + "referencedDeclaration": 771, "type": "uint256", "value": "_ReqNo" }, - "id": 918, + "id": 799, "name": "Identifier", - "src": "8279:6:1" + "src": "7385:6:1" } ], - "id": 919, + "id": 800, "name": "IndexAccess", - "src": "8246:40:1" + "src": "7352:40:1" } ], - "id": 920, + "id": 801, "name": "MemberAccess", - "src": "8246:47:1" + "src": "7352:47:1" }, { "attributes": { @@ -26692,14 +24077,14 @@ "type": "int_const 1", "value": "1" }, - "id": 921, + "id": 802, "name": "Literal", - "src": "8297:1:1" + "src": "7403:1:1" } ], - "id": 922, + "id": 803, "name": "BinaryOperation", - "src": "8246:52:1" + "src": "7352:52:1" }, { "attributes": { @@ -26714,19 +24099,19 @@ "type": "literal_string \"Request Already Accepted or Rejected\"", "value": "Request Already Accepted or Rejected" }, - "id": 923, + "id": 804, "name": "Literal", - "src": "8301:38:1" + "src": "7407:38:1" } ], - "id": 924, + "id": 805, "name": "FunctionCall", - "src": "8238:102:1" + "src": "7344:102:1" } ], - "id": 925, + "id": 806, "name": "ExpressionStatement", - "src": "8238:102:1" + "src": "7344:102:1" }, { "children": [ @@ -26795,9 +24180,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 926, + "id": 807, "name": "Identifier", - "src": "8353:12:1" + "src": "7459:12:1" }, { "attributes": { @@ -26817,28 +24202,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 927, + "id": 808, "name": "Identifier", - "src": "8366:3:1" + "src": "7472:3:1" } ], - "id": 928, + "id": 809, "name": "MemberAccess", - "src": "8366:10:1" + "src": "7472:10:1" } ], - "id": 929, + "id": 810, "name": "IndexAccess", - "src": "8353:24:1" + "src": "7459:24:1" } ], - "id": 930, + "id": 811, "name": "MemberAccess", - "src": "8353:32:1" + "src": "7459:32:1" }, { "attributes": { @@ -26846,23 +24231,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 890, + "referencedDeclaration": 771, "type": "uint256", "value": "_ReqNo" }, - "id": 931, + "id": 812, "name": "Identifier", - "src": "8386:6:1" + "src": "7492:6:1" } ], - "id": 932, + "id": 813, "name": "IndexAccess", - "src": "8353:40:1" + "src": "7459:40:1" } ], - "id": 933, + "id": 814, "name": "MemberAccess", - "src": "8353:47:1" + "src": "7459:47:1" }, { "attributes": { @@ -26877,24 +24262,24 @@ "type": "int_const 0", "value": "0" }, - "id": 934, + "id": 815, "name": "Literal", - "src": "8403:1:1" + "src": "7509:1:1" } ], - "id": 935, + "id": 816, "name": "Assignment", - "src": "8353:51:1" + "src": "7459:51:1" } ], - "id": 936, + "id": 817, "name": "ExpressionStatement", - "src": "8353:51:1" + "src": "7459:51:1" }, { "attributes": { "assignments": [ - 938 + 819 ] }, "children": [ @@ -26902,7 +24287,7 @@ "attributes": { "constant": false, "name": "flag", - "scope": 1030, + "scope": 904, "stateVariable": false, "storageLocation": "default", "type": "bool", @@ -26915,14 +24300,14 @@ "name": "bool", "type": "bool" }, - "id": 937, + "id": 818, "name": "ElementaryTypeName", - "src": "8417:4:1" + "src": "7523:4:1" } ], - "id": 938, + "id": 819, "name": "VariableDeclaration", - "src": "8417:9:1" + "src": "7523:9:1" }, { "attributes": { @@ -26937,19 +24322,19 @@ "type": "bool", "value": "false" }, - "id": 939, + "id": 820, "name": "Literal", - "src": "8429:5:1" + "src": "7535:5:1" } ], - "id": 940, + "id": 821, "name": "VariableDeclarationStatement", - "src": "8417:17:1" + "src": "7523:17:1" }, { "attributes": { "assignments": [ - 942 + 823 ] }, "children": [ @@ -26957,7 +24342,7 @@ "attributes": { "constant": false, "name": "User", - "scope": 1030, + "scope": 904, "stateVariable": false, "storageLocation": "default", "type": "address", @@ -26971,14 +24356,14 @@ "stateMutability": "nonpayable", "type": "address" }, - "id": 941, + "id": 822, "name": "ElementaryTypeName", - "src": "8445:7:1" + "src": "7551:7:1" } ], - "id": 942, + "id": 823, "name": "VariableDeclaration", - "src": "8445:12:1" + "src": "7551:12:1" }, { "attributes": { @@ -27034,9 +24419,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 943, + "id": 824, "name": "Identifier", - "src": "8460:12:1" + "src": "7566:12:1" }, { "attributes": { @@ -27056,28 +24441,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 944, + "id": 825, "name": "Identifier", - "src": "8473:3:1" + "src": "7579:3:1" } ], - "id": 945, + "id": 826, "name": "MemberAccess", - "src": "8473:10:1" + "src": "7579:10:1" } ], - "id": 946, + "id": 827, "name": "IndexAccess", - "src": "8460:24:1" + "src": "7566:24:1" } ], - "id": 947, + "id": 828, "name": "MemberAccess", - "src": "8460:32:1" + "src": "7566:32:1" }, { "attributes": { @@ -27085,35 +24470,35 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 890, + "referencedDeclaration": 771, "type": "uint256", "value": "_ReqNo" }, - "id": 948, + "id": 829, "name": "Identifier", - "src": "8493:6:1" + "src": "7599:6:1" } ], - "id": 949, + "id": 830, "name": "IndexAccess", - "src": "8460:40:1" + "src": "7566:40:1" } ], - "id": 950, + "id": 831, "name": "MemberAccess", - "src": "8460:46:1" + "src": "7566:46:1" } ], - "id": 951, + "id": 832, "name": "VariableDeclarationStatement", - "src": "8445:61:1" + "src": "7551:61:1" }, { "children": [ { "attributes": { "assignments": [ - 953 + 834 ] }, "children": [ @@ -27121,7 +24506,7 @@ "attributes": { "constant": false, "name": "i", - "scope": 1022, + "scope": 903, "stateVariable": false, "storageLocation": "default", "type": "uint256", @@ -27134,14 +24519,14 @@ "name": "uint", "type": "uint256" }, - "id": 952, + "id": 833, "name": "ElementaryTypeName", - "src": "8523:4:1" + "src": "7629:4:1" } ], - "id": 953, + "id": 834, "name": "VariableDeclaration", - "src": "8523:6:1" + "src": "7629:6:1" }, { "attributes": { @@ -27156,14 +24541,14 @@ "type": "int_const 0", "value": "0" }, - "id": 954, + "id": 835, "name": "Literal", - "src": "8530:1:1" + "src": "7636:1:1" } ], - "id": 955, + "id": 836, "name": "VariableDeclarationStatement", - "src": "8523:8:1" + "src": "7629:8:1" }, { "attributes": { @@ -27186,13 +24571,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 953, + "referencedDeclaration": 834, "type": "uint256", "value": "i" }, - "id": 956, + "id": 837, "name": "Identifier", - "src": "8534:1:1" + "src": "7640:1:1" }, { "attributes": { @@ -27226,9 +24611,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 957, + "id": 838, "name": "Identifier", - "src": "8537:10:1" + "src": "7643:10:1" }, { "attributes": { @@ -27236,28 +24621,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 942, + "referencedDeclaration": 823, "type": "address", "value": "User" }, - "id": 958, + "id": 839, "name": "Identifier", - "src": "8548:4:1" + "src": "7654:4:1" } ], - "id": 959, + "id": 840, "name": "IndexAccess", - "src": "8537:16:1" + "src": "7643:16:1" } ], - "id": 960, + "id": 841, "name": "MemberAccess", - "src": "8537:24:1" + "src": "7643:24:1" } ], - "id": 961, + "id": 842, "name": "BinaryOperation", - "src": "8534:27:1" + "src": "7640:27:1" }, { "children": [ @@ -27279,23 +24664,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 953, + "referencedDeclaration": 834, "type": "uint256", "value": "i" }, - "id": 962, + "id": 843, "name": "Identifier", - "src": "8564:1:1" + "src": "7670:1:1" } ], - "id": 963, + "id": 844, "name": "UnaryOperation", - "src": "8564:3:1" + "src": "7670:3:1" } ], - "id": 964, + "id": 845, "name": "ExpressionStatement", - "src": "8564:3:1" + "src": "7670:3:1" }, { "children": [ @@ -27360,13 +24745,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1099, + "referencedDeclaration": 1015, "type": "function (bytes memory) pure returns (bytes32)", "value": "keccak256" }, - "id": 965, + "id": 846, "name": "Identifier", - "src": "8586:9:1" + "src": "7692:9:1" }, { "attributes": { @@ -27398,9 +24783,9 @@ "type": "type(bytes storage pointer)", "value": "bytes" }, - "id": 966, + "id": 847, "name": "ElementaryTypeNameExpression", - "src": "8596:5:1" + "src": "7702:5:1" }, { "attributes": { @@ -27456,9 +24841,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 967, + "id": 848, "name": "Identifier", - "src": "8602:10:1" + "src": "7708:10:1" }, { "attributes": { @@ -27466,23 +24851,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 942, + "referencedDeclaration": 823, "type": "address", "value": "User" }, - "id": 968, + "id": 849, "name": "Identifier", - "src": "8613:4:1" + "src": "7719:4:1" } ], - "id": 969, + "id": 850, "name": "IndexAccess", - "src": "8602:16:1" + "src": "7708:16:1" } ], - "id": 970, + "id": 851, "name": "MemberAccess", - "src": "8602:20:1" + "src": "7708:20:1" }, { "attributes": { @@ -27490,33 +24875,33 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 953, + "referencedDeclaration": 834, "type": "uint256", "value": "i" }, - "id": 971, + "id": 852, "name": "Identifier", - "src": "8623:1:1" + "src": "7729:1:1" } ], - "id": 972, + "id": 853, "name": "IndexAccess", - "src": "8602:23:1" + "src": "7708:23:1" } ], - "id": 973, + "id": 854, "name": "MemberAccess", - "src": "8602:28:1" + "src": "7708:28:1" } ], - "id": 974, + "id": 855, "name": "FunctionCall", - "src": "8596:35:1" + "src": "7702:35:1" } ], - "id": 975, + "id": 856, "name": "FunctionCall", - "src": "8586:46:1" + "src": "7692:46:1" }, { "attributes": { @@ -27544,13 +24929,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1099, + "referencedDeclaration": 1015, "type": "function (bytes memory) pure returns (bytes32)", "value": "keccak256" }, - "id": 976, + "id": 857, "name": "Identifier", - "src": "8636:9:1" + "src": "7742:9:1" }, { "attributes": { @@ -27582,9 +24967,9 @@ "type": "type(bytes storage pointer)", "value": "bytes" }, - "id": 977, + "id": 858, "name": "ElementaryTypeNameExpression", - "src": "8646:5:1" + "src": "7752:5:1" }, { "attributes": { @@ -27618,9 +25003,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 978, + "id": 859, "name": "Identifier", - "src": "8652:12:1" + "src": "7758:12:1" }, { "attributes": { @@ -27640,43 +25025,43 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 979, + "id": 860, "name": "Identifier", - "src": "8665:3:1" + "src": "7771:3:1" } ], - "id": 980, + "id": 861, "name": "MemberAccess", - "src": "8665:10:1" + "src": "7771:10:1" } ], - "id": 981, + "id": 862, "name": "IndexAccess", - "src": "8652:24:1" + "src": "7758:24:1" } ], - "id": 982, + "id": 863, "name": "MemberAccess", - "src": "8652:32:1" + "src": "7758:32:1" } ], - "id": 983, + "id": 864, "name": "FunctionCall", - "src": "8646:39:1" + "src": "7752:39:1" } ], - "id": 984, + "id": 865, "name": "FunctionCall", - "src": "8636:50:1" + "src": "7742:50:1" } ], - "id": 985, + "id": 866, "name": "BinaryOperation", - "src": "8586:100:1" + "src": "7692:100:1" }, { "attributes": { @@ -27719,13 +25104,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1099, + "referencedDeclaration": 1015, "type": "function (bytes memory) pure returns (bytes32)", "value": "keccak256" }, - "id": 986, + "id": 867, "name": "Identifier", - "src": "8707:9:1" + "src": "7813:9:1" }, { "attributes": { @@ -27757,9 +25142,9 @@ "type": "type(bytes storage pointer)", "value": "bytes" }, - "id": 987, + "id": 868, "name": "ElementaryTypeNameExpression", - "src": "8717:5:1" + "src": "7823:5:1" }, { "attributes": { @@ -27815,9 +25200,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 988, + "id": 869, "name": "Identifier", - "src": "8723:10:1" + "src": "7829:10:1" }, { "attributes": { @@ -27825,23 +25210,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 942, + "referencedDeclaration": 823, "type": "address", "value": "User" }, - "id": 989, + "id": 870, "name": "Identifier", - "src": "8734:4:1" + "src": "7840:4:1" } ], - "id": 990, + "id": 871, "name": "IndexAccess", - "src": "8723:16:1" + "src": "7829:16:1" } ], - "id": 991, + "id": 872, "name": "MemberAccess", - "src": "8723:20:1" + "src": "7829:20:1" }, { "attributes": { @@ -27849,33 +25234,33 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 953, + "referencedDeclaration": 834, "type": "uint256", "value": "i" }, - "id": 992, + "id": 873, "name": "Identifier", - "src": "8744:1:1" + "src": "7850:1:1" } ], - "id": 993, + "id": 874, "name": "IndexAccess", - "src": "8723:23:1" + "src": "7829:23:1" } ], - "id": 994, + "id": 875, "name": "MemberAccess", - "src": "8723:39:1" + "src": "7829:39:1" } ], - "id": 995, + "id": 876, "name": "FunctionCall", - "src": "8717:46:1" + "src": "7823:46:1" } ], - "id": 996, + "id": 877, "name": "FunctionCall", - "src": "8707:57:1" + "src": "7813:57:1" }, { "attributes": { @@ -27903,13 +25288,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1099, + "referencedDeclaration": 1015, "type": "function (bytes memory) pure returns (bytes32)", "value": "keccak256" }, - "id": 997, + "id": 878, "name": "Identifier", - "src": "8768:9:1" + "src": "7874:9:1" }, { "attributes": { @@ -27941,9 +25326,9 @@ "type": "type(bytes storage pointer)", "value": "bytes" }, - "id": 998, + "id": 879, "name": "ElementaryTypeNameExpression", - "src": "8778:5:1" + "src": "7884:5:1" }, { "attributes": { @@ -27958,29 +25343,29 @@ "type": "literal_string \"Pending\"", "value": "Pending" }, - "id": 999, + "id": 880, "name": "Literal", - "src": "8784:9:1" + "src": "7890:9:1" } ], - "id": 1000, + "id": 881, "name": "FunctionCall", - "src": "8778:16:1" + "src": "7884:16:1" } ], - "id": 1001, + "id": 882, "name": "FunctionCall", - "src": "8768:27:1" + "src": "7874:27:1" } ], - "id": 1002, + "id": 883, "name": "BinaryOperation", - "src": "8707:88:1" + "src": "7813:88:1" } ], - "id": 1003, + "id": 884, "name": "BinaryOperation", - "src": "8586:209:1" + "src": "7692:209:1" }, { "children": [ @@ -28051,9 +25436,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 1004, + "id": 885, "name": "Identifier", - "src": "8815:10:1" + "src": "7921:10:1" }, { "attributes": { @@ -28061,23 +25446,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 942, + "referencedDeclaration": 823, "type": "address", "value": "User" }, - "id": 1005, + "id": 886, "name": "Identifier", - "src": "8826:4:1" + "src": "7932:4:1" } ], - "id": 1006, + "id": 887, "name": "IndexAccess", - "src": "8815:16:1" + "src": "7921:16:1" } ], - "id": 1007, + "id": 888, "name": "MemberAccess", - "src": "8815:20:1" + "src": "7921:20:1" }, { "attributes": { @@ -28085,23 +25470,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 953, + "referencedDeclaration": 834, "type": "uint256", "value": "i" }, - "id": 1008, + "id": 889, "name": "Identifier", - "src": "8836:1:1" + "src": "7942:1:1" } ], - "id": 1009, + "id": 890, "name": "IndexAccess", - "src": "8815:23:1" + "src": "7921:23:1" } ], - "id": 1010, + "id": 891, "name": "MemberAccess", - "src": "8815:39:1" + "src": "7921:39:1" }, { "attributes": { @@ -28116,19 +25501,19 @@ "type": "literal_string \"Rejected\"", "value": "Rejected" }, - "id": 1011, + "id": 892, "name": "Literal", - "src": "8857:10:1" + "src": "7963:10:1" } ], - "id": 1012, + "id": 893, "name": "Assignment", - "src": "8815:52:1" + "src": "7921:52:1" } ], - "id": 1013, + "id": 894, "name": "ExpressionStatement", - "src": "8815:52:1" + "src": "7921:52:1" }, { "children": [ @@ -28149,13 +25534,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 938, + "referencedDeclaration": 819, "type": "bool", "value": "flag" }, - "id": 1014, + "id": 895, "name": "Identifier", - "src": "8886:4:1" + "src": "7992:4:1" }, { "attributes": { @@ -28170,99 +25555,142 @@ "type": "bool", "value": "true" }, - "id": 1015, + "id": 896, "name": "Literal", - "src": "8893:4:1" + "src": "7999:4:1" } ], - "id": 1016, + "id": 897, "name": "Assignment", - "src": "8886:11:1" + "src": "7992:11:1" } ], - "id": 1017, + "id": 898, "name": "ExpressionStatement", - "src": "8886:11:1" + "src": "7992:11:1" }, { - "id": 1018, + "id": 899, "name": "Break", - "src": "8916:5:1" + "src": "8022:5:1" } ], - "id": 1019, + "id": 900, "name": "Block", - "src": "8796:141:1" + "src": "7902:141:1" } ], - "id": 1020, + "id": 901, "name": "IfStatement", - "src": "8583:354:1" + "src": "7689:354:1" } ], - "id": 1021, + "id": 902, "name": "Block", - "src": "8568:380:1" + "src": "7674:380:1" + } + ], + "id": 903, + "name": "ForStatement", + "src": "7625:429:1" + } + ], + "id": 904, + "name": "Block", + "src": "7250:811:1" + } + ], + "id": 905, + "name": "FunctionDefinition", + "src": "7165:896:1" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "totalId", + "scope": 1006, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 906, + "name": "ParameterList", + "src": "8085:2:1" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 917, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 907, + "name": "ElementaryTypeName", + "src": "8109:4:1" } ], - "id": 1022, - "name": "ForStatement", - "src": "8519:429:1" - }, + "id": 908, + "name": "VariableDeclaration", + "src": "8109:4:1" + } + ], + "id": 909, + "name": "ParameterList", + "src": "8108:6:1" + }, + { + "children": [ { + "attributes": { + "functionReturnParameters": 909 + }, "children": [ { "attributes": { "argumentTypes": null, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "isStructConstructorCall": false, "lValueRequested": false, - "names": [ - null - ], - "type": "tuple()", - "type_conversion": false + "member_name": "IdCount", + "referencedDeclaration": 56, + "type": "uint256" }, "children": [ - { - "attributes": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_179851dcf74cd84bf02ee82ea38f04eba7d1ea987c1c4f01660b225766cc2617", - "typeString": "literal_string \"User Identity Not Found\"" - } - ], - "overloadedDeclarations": [ - 1108, - 1109 - ], - "referencedDeclaration": 1109, - "type": "function (bool,string memory) pure", - "value": "require" - }, - "id": 1023, - "name": "Identifier", - "src": "8958:7:1" - }, { "attributes": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, "lValueRequested": false, - "operator": "==", - "type": "bool" + "type": "struct Identity.user storage ref" }, "children": [ { @@ -28271,72 +25699,69 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 938, - "type": "bool", - "value": "flag" + "referencedDeclaration": 104, + "type": "mapping(address => struct Identity.user storage ref)", + "value": "UserDetail" }, - "id": 1024, + "id": 910, "name": "Identifier", - "src": "8966:4:1" + "src": "8132:10:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "74727565", "isConstant": false, "isLValue": false, - "isPure": true, + "isPure": false, "lValueRequested": false, - "subdenomination": null, - "token": "bool", - "type": "bool", - "value": "true" + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" }, - "id": 1025, - "name": "Literal", - "src": "8974:4:1" + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" + }, + "id": 911, + "name": "Identifier", + "src": "8143:3:1" + } + ], + "id": 912, + "name": "MemberAccess", + "src": "8143:10:1" } ], - "id": 1026, - "name": "BinaryOperation", - "src": "8966:12:1" - }, - { - "attributes": { - "argumentTypes": null, - "hexvalue": "55736572204964656e74697479204e6f7420466f756e64", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"User Identity Not Found\"", - "value": "User Identity Not Found" - }, - "id": 1027, - "name": "Literal", - "src": "8980:25:1" + "id": 913, + "name": "IndexAccess", + "src": "8132:22:1" } ], - "id": 1028, - "name": "FunctionCall", - "src": "8958:48:1" + "id": 914, + "name": "MemberAccess", + "src": "8132:30:1" } ], - "id": 1029, - "name": "ExpressionStatement", - "src": "8958:48:1" + "id": 915, + "name": "Return", + "src": "8125:37:1" } ], - "id": 1030, + "id": 916, "name": "Block", - "src": "8144:870:1" + "src": "8114:56:1" } ], - "id": 1031, + "id": 917, "name": "FunctionDefinition", - "src": "8059:955:1" + "src": "8069:101:1" }, { "attributes": { @@ -28348,7 +25773,7 @@ null ], "name": "getId", - "scope": 1090, + "scope": 1006, "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -28360,7 +25785,7 @@ "attributes": { "constant": false, "name": "_IdNo", - "scope": 1058, + "scope": 944, "stateVariable": false, "storageLocation": "default", "type": "uint256", @@ -28373,20 +25798,20 @@ "name": "uint", "type": "uint256" }, - "id": 1032, + "id": 918, "name": "ElementaryTypeName", - "src": "9037:4:1" + "src": "8193:4:1" } ], - "id": 1033, + "id": 919, "name": "VariableDeclaration", - "src": "9037:10:1" + "src": "8193:10:1" }, { "attributes": { "constant": false, "name": "account", - "scope": 1058, + "scope": 944, "stateVariable": false, "storageLocation": "default", "type": "address", @@ -28400,19 +25825,19 @@ "stateMutability": "nonpayable", "type": "address" }, - "id": 1034, + "id": 920, "name": "ElementaryTypeName", - "src": "9049:7:1" + "src": "8205:7:1" } ], - "id": 1035, + "id": 921, "name": "VariableDeclaration", - "src": "9049:15:1" + "src": "8205:15:1" } ], - "id": 1036, + "id": 922, "name": "ParameterList", - "src": "9036:29:1" + "src": "8192:29:1" }, { "children": [ @@ -28420,7 +25845,7 @@ "attributes": { "constant": false, "name": "", - "scope": 1058, + "scope": 944, "stateVariable": false, "storageLocation": "memory", "type": "struct Identity.identity", @@ -28435,19 +25860,19 @@ "referencedDeclaration": 48, "type": "struct Identity.identity" }, - "id": 1037, + "id": 923, "name": "UserDefinedTypeName", - "src": "9087:8:1" + "src": "8243:8:1" } ], - "id": 1038, + "id": 924, "name": "VariableDeclaration", - "src": "9087:15:1" + "src": "8243:15:1" } ], - "id": 1039, + "id": 925, "name": "ParameterList", - "src": "9086:17:1" + "src": "8242:17:1" }, { "children": [ @@ -28481,16 +25906,16 @@ } ], "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, + "referencedDeclaration": 1025, "type": "function (bool,string memory) pure", "value": "require" }, - "id": 1040, + "id": 926, "name": "Identifier", - "src": "9114:7:1" + "src": "8270:7:1" }, { "attributes": { @@ -28513,13 +25938,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1033, + "referencedDeclaration": 919, "type": "uint256", "value": "_IdNo" }, - "id": 1041, + "id": 927, "name": "Identifier", - "src": "9122:5:1" + "src": "8278:5:1" }, { "attributes": { @@ -28553,9 +25978,9 @@ "type": "mapping(address => struct Identity.user storage ref)", "value": "UserDetail" }, - "id": 1042, + "id": 928, "name": "Identifier", - "src": "9130:10:1" + "src": "8286:10:1" }, { "attributes": { @@ -28563,59 +25988,343 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1035, + "referencedDeclaration": 921, "type": "address", "value": "account" }, - "id": 1043, + "id": 929, "name": "Identifier", - "src": "9141:7:1" + "src": "8297:7:1" } ], - "id": 1044, + "id": 930, "name": "IndexAccess", - "src": "9130:19:1" + "src": "8286:19:1" } ], - "id": 1045, + "id": 931, "name": "MemberAccess", - "src": "9130:27:1" + "src": "8286:27:1" } ], - "id": 1046, + "id": 932, "name": "BinaryOperation", - "src": "9122:35:1" + "src": "8278:35:1" + }, + { + "attributes": { + "argumentTypes": null, + "hexvalue": "496420646f6573206e6f74206578697374", + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "subdenomination": null, + "token": "string", + "type": "literal_string \"Id does not exist\"", + "value": "Id does not exist" + }, + "id": 933, + "name": "Literal", + "src": "8315:19:1" + } + ], + "id": 934, + "name": "FunctionCall", + "src": "8270:65:1" + } + ], + "id": 935, + "name": "ExpressionStatement", + "src": "8270:65:1" + }, + { + "attributes": { + "functionReturnParameters": 925 + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.identity storage ref" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "Ids", + "referencedDeclaration": 60, + "type": "mapping(uint256 => struct Identity.identity storage ref)" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "type": "struct Identity.user storage ref" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 104, + "type": "mapping(address => struct Identity.user storage ref)", + "value": "UserDetail" + }, + "id": 936, + "name": "Identifier", + "src": "8353:10:1" + }, + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 921, + "type": "address", + "value": "account" + }, + "id": 937, + "name": "Identifier", + "src": "8364:7:1" + } + ], + "id": 938, + "name": "IndexAccess", + "src": "8353:19:1" + } + ], + "id": 939, + "name": "MemberAccess", + "src": "8353:23:1" }, { "attributes": { "argumentTypes": null, - "hexvalue": "496420646f6573206e6f74206578697374", - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "subdenomination": null, - "token": "string", - "type": "literal_string \"Id does not exist\"", - "value": "Id does not exist" + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 919, + "type": "uint256", + "value": "_IdNo" + }, + "id": 940, + "name": "Identifier", + "src": "8377:5:1" + } + ], + "id": 941, + "name": "IndexAccess", + "src": "8353:30:1" + } + ], + "id": 942, + "name": "Return", + "src": "8346:37:1" + } + ], + "id": 943, + "name": "Block", + "src": "8259:132:1" + } + ], + "id": 944, + "name": "FunctionDefinition", + "src": "8178:213:1" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "totalIssuer", + "scope": 1006, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 945, + "name": "ParameterList", + "src": "8419:2:1" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 953, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 946, + "name": "ElementaryTypeName", + "src": "8443:4:1" + } + ], + "id": 947, + "name": "VariableDeclaration", + "src": "8443:4:1" + } + ], + "id": 948, + "name": "ParameterList", + "src": "8442:6:1" + }, + { + "children": [ + { + "attributes": { + "functionReturnParameters": 948 + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "length", + "referencedDeclaration": null, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 97, + "type": "struct Identity.issuer storage ref[] storage ref", + "value": "Issuer" }, - "id": 1047, - "name": "Literal", - "src": "9159:19:1" + "id": 949, + "name": "Identifier", + "src": "8466:6:1" } ], - "id": 1048, - "name": "FunctionCall", - "src": "9114:65:1" + "id": 950, + "name": "MemberAccess", + "src": "8466:13:1" } ], - "id": 1049, - "name": "ExpressionStatement", - "src": "9114:65:1" - }, + "id": 951, + "name": "Return", + "src": "8459:20:1" + } + ], + "id": 952, + "name": "Block", + "src": "8448:39:1" + } + ], + "id": 953, + "name": "FunctionDefinition", + "src": "8399:88:1" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "totalRequest", + "scope": 1006, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 954, + "name": "ParameterList", + "src": "8516:2:1" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 965, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 955, + "name": "ElementaryTypeName", + "src": "8540:4:1" + } + ], + "id": 956, + "name": "VariableDeclaration", + "src": "8540:4:1" + } + ], + "id": 957, + "name": "ParameterList", + "src": "8539:6:1" + }, + { + "children": [ { "attributes": { - "functionReturnParameters": 1039 + "functionReturnParameters": 957 }, "children": [ { @@ -28625,7 +26334,9 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "type": "struct Identity.identity storage ref" + "member_name": "ReqCount", + "referencedDeclaration": 87, + "type": "uint256" }, "children": [ { @@ -28635,19 +26346,33 @@ "isLValue": true, "isPure": false, "lValueRequested": false, - "member_name": "Ids", - "referencedDeclaration": 60, - "type": "mapping(uint256 => struct Identity.identity storage ref)" + "type": "struct Identity.issuer storage ref" }, "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 108, + "type": "mapping(address => struct Identity.issuer storage ref)", + "value": "IssuerDetail" + }, + "id": 958, + "name": "Identifier", + "src": "8563:12:1" + }, { "attributes": { "argumentTypes": null, "isConstant": false, - "isLValue": true, + "isLValue": false, "isPure": false, "lValueRequested": false, - "type": "struct Identity.user storage ref" + "member_name": "sender", + "referencedDeclaration": null, + "type": "address payable" }, "children": [ { @@ -28656,71 +26381,43 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 104, - "type": "mapping(address => struct Identity.user storage ref)", - "value": "UserDetail" - }, - "id": 1050, - "name": "Identifier", - "src": "9197:10:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1035, - "type": "address", - "value": "account" + "referencedDeclaration": 1021, + "type": "msg", + "value": "msg" }, - "id": 1051, + "id": 959, "name": "Identifier", - "src": "9208:7:1" + "src": "8576:3:1" } ], - "id": 1052, - "name": "IndexAccess", - "src": "9197:19:1" + "id": 960, + "name": "MemberAccess", + "src": "8576:10:1" } ], - "id": 1053, - "name": "MemberAccess", - "src": "9197:23:1" - }, - { - "attributes": { - "argumentTypes": null, - "overloadedDeclarations": [ - null - ], - "referencedDeclaration": 1033, - "type": "uint256", - "value": "_IdNo" - }, - "id": 1054, - "name": "Identifier", - "src": "9221:5:1" + "id": 961, + "name": "IndexAccess", + "src": "8563:24:1" } ], - "id": 1055, - "name": "IndexAccess", - "src": "9197:30:1" + "id": 962, + "name": "MemberAccess", + "src": "8563:33:1" } ], - "id": 1056, + "id": 963, "name": "Return", - "src": "9190:37:1" + "src": "8556:40:1" } ], - "id": 1057, + "id": 964, "name": "Block", - "src": "9103:132:1" + "src": "8545:59:1" } ], - "id": 1058, + "id": 965, "name": "FunctionDefinition", - "src": "9022:213:1" + "src": "8495:109:1" }, { "attributes": { @@ -28729,7 +26426,7 @@ "isConstructor": false, "kind": "function", "name": "getRequest", - "scope": 1090, + "scope": 1006, "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -28741,7 +26438,7 @@ "attributes": { "constant": false, "name": "_RqNo", - "scope": 1089, + "scope": 996, "stateVariable": false, "storageLocation": "default", "type": "uint256", @@ -28754,19 +26451,19 @@ "name": "uint", "type": "uint256" }, - "id": 1059, + "id": 966, "name": "ElementaryTypeName", - "src": "9263:4:1" + "src": "8632:4:1" } ], - "id": 1060, + "id": 967, "name": "VariableDeclaration", - "src": "9263:10:1" + "src": "8632:10:1" } ], - "id": 1061, + "id": 968, "name": "ParameterList", - "src": "9262:12:1" + "src": "8631:12:1" }, { "children": [ @@ -28774,7 +26471,7 @@ "attributes": { "constant": false, "name": "", - "scope": 1089, + "scope": 996, "stateVariable": false, "storageLocation": "memory", "type": "struct Identity.verifyIdRequest", @@ -28789,19 +26486,19 @@ "referencedDeclaration": 68, "type": "struct Identity.verifyIdRequest" }, - "id": 1066, + "id": 973, "name": "UserDefinedTypeName", - "src": "9314:15:1" + "src": "8683:15:1" } ], - "id": 1067, + "id": 974, "name": "VariableDeclaration", - "src": "9314:22:1" + "src": "8683:22:1" } ], - "id": 1068, + "id": 975, "name": "ParameterList", - "src": "9313:24:1" + "src": "8682:24:1" }, { "children": [ @@ -28815,9 +26512,9 @@ "type": "modifier (address)", "value": "issue" }, - "id": 1062, + "id": 969, "name": "Identifier", - "src": "9282:5:1" + "src": "8644:5:1" }, { "attributes": { @@ -28837,23 +26534,23 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 1063, + "id": 970, "name": "Identifier", - "src": "9288:3:1" + "src": "8650:3:1" } ], - "id": 1064, + "id": 971, "name": "MemberAccess", - "src": "9288:10:1" + "src": "8650:10:1" } ], - "id": 1065, + "id": 972, "name": "ModifierInvocation", - "src": "9282:17:1" + "src": "8644:17:1" }, { "children": [ @@ -28887,16 +26584,16 @@ } ], "overloadedDeclarations": [ - 1108, - 1109 + 1024, + 1025 ], - "referencedDeclaration": 1109, + "referencedDeclaration": 1025, "type": "function (bool,string memory) pure", "value": "require" }, - "id": 1069, + "id": 976, "name": "Identifier", - "src": "9348:7:1" + "src": "8717:7:1" }, { "attributes": { @@ -28919,13 +26616,13 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1060, + "referencedDeclaration": 967, "type": "uint256", "value": "_RqNo" }, - "id": 1070, + "id": 977, "name": "Identifier", - "src": "9356:5:1" + "src": "8725:5:1" }, { "attributes": { @@ -28959,9 +26656,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 1071, + "id": 978, "name": "Identifier", - "src": "9364:12:1" + "src": "8733:12:1" }, { "attributes": { @@ -28981,33 +26678,33 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 1072, + "id": 979, "name": "Identifier", - "src": "9377:3:1" + "src": "8746:3:1" } ], - "id": 1073, + "id": 980, "name": "MemberAccess", - "src": "9377:10:1" + "src": "8746:10:1" } ], - "id": 1074, + "id": 981, "name": "IndexAccess", - "src": "9364:24:1" + "src": "8733:24:1" } ], - "id": 1075, + "id": 982, "name": "MemberAccess", - "src": "9364:33:1" + "src": "8733:33:1" } ], - "id": 1076, + "id": 983, "name": "BinaryOperation", - "src": "9356:41:1" + "src": "8725:41:1" }, { "attributes": { @@ -29022,23 +26719,23 @@ "type": "literal_string \"Request does not exist\"", "value": "Request does not exist" }, - "id": 1077, + "id": 984, "name": "Literal", - "src": "9399:24:1" + "src": "8768:24:1" } ], - "id": 1078, + "id": 985, "name": "FunctionCall", - "src": "9348:76:1" + "src": "8717:76:1" } ], - "id": 1079, + "id": 986, "name": "ExpressionStatement", - "src": "9348:76:1" + "src": "8717:76:1" }, { "attributes": { - "functionReturnParameters": 1068 + "functionReturnParameters": 975 }, "children": [ { @@ -29083,9 +26780,9 @@ "type": "mapping(address => struct Identity.issuer storage ref)", "value": "IssuerDetail" }, - "id": 1080, + "id": 987, "name": "Identifier", - "src": "9442:12:1" + "src": "8811:12:1" }, { "attributes": { @@ -29105,28 +26802,28 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1105, + "referencedDeclaration": 1021, "type": "msg", "value": "msg" }, - "id": 1081, + "id": 988, "name": "Identifier", - "src": "9455:3:1" + "src": "8824:3:1" } ], - "id": 1082, + "id": 989, "name": "MemberAccess", - "src": "9455:10:1" + "src": "8824:10:1" } ], - "id": 1083, + "id": 990, "name": "IndexAccess", - "src": "9442:24:1" + "src": "8811:24:1" } ], - "id": 1084, + "id": 991, "name": "MemberAccess", - "src": "9442:32:1" + "src": "8811:32:1" }, { "attributes": { @@ -29134,43 +26831,156 @@ "overloadedDeclarations": [ null ], - "referencedDeclaration": 1060, + "referencedDeclaration": 967, "type": "uint256", "value": "_RqNo" }, - "id": 1085, + "id": 992, "name": "Identifier", - "src": "9475:5:1" + "src": "8844:5:1" } ], - "id": 1086, + "id": 993, "name": "IndexAccess", - "src": "9442:39:1" + "src": "8811:39:1" + } + ], + "id": 994, + "name": "Return", + "src": "8804:46:1" + } + ], + "id": 995, + "name": "Block", + "src": "8706:152:1" + } + ], + "id": 996, + "name": "FunctionDefinition", + "src": "8612:246:1" + }, + { + "attributes": { + "documentation": null, + "implemented": true, + "isConstructor": false, + "kind": "function", + "modifiers": [ + null + ], + "name": "issuerVerificationRequestCount", + "scope": 1006, + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + "children": [ + { + "attributes": { + "parameters": [ + null + ] + }, + "children": [], + "id": 997, + "name": "ParameterList", + "src": "8905:2:1" + }, + { + "children": [ + { + "attributes": { + "constant": false, + "name": "", + "scope": 1005, + "stateVariable": false, + "storageLocation": "default", + "type": "uint256", + "value": null, + "visibility": "internal" + }, + "children": [ + { + "attributes": { + "name": "uint", + "type": "uint256" + }, + "id": 998, + "name": "ElementaryTypeName", + "src": "8929:4:1" + } + ], + "id": 999, + "name": "VariableDeclaration", + "src": "8929:4:1" + } + ], + "id": 1000, + "name": "ParameterList", + "src": "8928:6:1" + }, + { + "children": [ + { + "attributes": { + "functionReturnParameters": 1000 + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "member_name": "length", + "referencedDeclaration": null, + "type": "uint256" + }, + "children": [ + { + "attributes": { + "argumentTypes": null, + "overloadedDeclarations": [ + null + ], + "referencedDeclaration": 100, + "type": "struct Identity.issuerVerificationRequest storage ref[] storage ref", + "value": "IssuerVerificationRequest" + }, + "id": 1001, + "name": "Identifier", + "src": "8952:25:1" + } + ], + "id": 1002, + "name": "MemberAccess", + "src": "8952:32:1" } ], - "id": 1087, + "id": 1003, "name": "Return", - "src": "9435:46:1" + "src": "8945:39:1" } ], - "id": 1088, + "id": 1004, "name": "Block", - "src": "9337:152:1" + "src": "8934:58:1" } ], - "id": 1089, + "id": 1005, "name": "FunctionDefinition", - "src": "9243:246:1" + "src": "8866:126:1" } ], - "id": 1090, + "id": 1006, "name": "ContractDefinition", - "src": "102:9390:1" + "src": "102:8893:1" } ], - "id": 1091, + "id": 1007, "name": "SourceUnit", - "src": "33:9461:1" + "src": "33:8964:1" }, "compiler": { "name": "solc", @@ -29180,12 +26990,12 @@ "3": { "events": {}, "links": {}, - "address": "0x384D0D5eD8A094511b804dcde855f6AAe3416476", - "transactionHash": "0x7c7b3e3fd1d3383d48b3c60be9ed2e0fdecfd14e877b6599318d6f4222002ba8" + "address": "0xc5a422571d21EeCe071Ac2f61dc6c9FcC61137A6", + "transactionHash": "0x158e33e030162391d6e396f40ac6a678b223bda4932d6939da643f8525a28d8f" } }, "schemaVersion": "3.3.4", - "updatedAt": "2021-11-07T10:38:49.299Z", + "updatedAt": "2021-11-26T06:12:23.482Z", "networkType": "ethereum", "devdoc": { "methods": {} diff --git a/src/helper.js b/src/helper.js index f1136e9..6321da5 100644 --- a/src/helper.js +++ b/src/helper.js @@ -1,6 +1,6 @@ -export const REFRESH_RATE = 10000; +export const REFRESH_RATE = 6000; export const ALERT_DELAY = 6000; -export const CONTRACT_ADDRESS = '0x384D0D5eD8A094511b804dcde855f6AAe3416476'; +export const CONTRACT_ADDRESS = '0xc5a422571d21EeCe071Ac2f61dc6c9FcC61137A6'; export const delay = async() => ( // return await for better async stack trace support in case of errors. await new Promise(resolve => setTimeout(resolve, REFRESH_RATE))